<div dir="ltr">Hi Guys,<div><br></div><div>Anyone got an idea why my errors are occurring ?</div><div><br></div><div><br></div><div><b>In Short description:</b></div><div><br></div><div>I got a custom module that uses a Eventhandler to send invoice data to a 3rd party api.</div><div>This module gives me a error when trying to trigger the Eventhandler after a series of Workflows.</div><div><br></div><div>The error I get is:"there are no products assigned" but this is pretty weird because i'm 100% sure there were products assigned before the first Workflow in the series gets triggerd.</div><div>So for some reason my products get removed and don't get reassigned on a save event.</div><div><br></div><div>Because there is no save event with the products assigned the Eventhandler can never successfully execute the code.</div><div><br></div><div>If anyone knows why this is happening please let me know.</div><div>Any workarounds would be appreciated also.</div><div><br></div><div>Kind Regards,</div><div><br></div><div>Lennart</div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><table style="font-size:12.8px;border-collapse:collapse;border-spacing:0px;color:rgb(0,0,0);font-family:Times"><tbody><tr><td style="font-family:Helvetica,Arial,sans-serif;line-height:18px;color:rgb(102,102,102);font-size:12px">Met vriendelijke groet,</td></tr><tr><td height="24"></td></tr><tr><td style="font-family:'Arial Black',Arial,sans-serif;line-height:18px;color:rgb(244,118,33);font-size:12px;font-weight:bold;text-transform:uppercase">Lennart VAN Ballegoij</td></tr><tr><td style="font-family:Helvetica,Arial,sans-serif;line-height:18px;color:rgb(102,102,102);font-size:12px">Backend Developer</td></tr><tr><td height="24"></td></tr><tr><td><img src="http://egmmedia.nl/wp-content/uploads/2016/01/EGM-Media-logo-retina.png" style="width:200px"></td></tr><tr><td height="24"></td></tr><tr><td><table style="border-collapse:collapse;border-spacing:0px"><tbody><tr><td width="24"><img src="http://egmmedia.nl/wp-content/uploads/2016/01/egm-signature-bubble2.png" style="width:18px"></td><td style="font-family:Helvetica,Arial,sans-serif;padding-right:24px;line-height:18px;color:rgb(102,102,102);font-size:12px">+31 (0) 85 30 300 50</td><td width="24"><img src="http://egmmedia.nl/wp-content/uploads/2016/01/egm-signature-pin2.png" style="width:18px"></td><td style="font-family:Helvetica,Arial,sans-serif;padding-right:48px;line-height:18px;color:rgb(102,102,102);font-size:12px">Westerlaan 51</td></tr><tr><td width="24"></td><td style="font-family:Helvetica,Arial,sans-serif;padding-right:24px;line-height:18px;color:rgb(102,102,102);font-size:12px"><a href="mailto:lennart@egmmedia.nl" style="color:rgb(244,118,33);text-decoration:none" target="_blank">lennart@egmmedia.nl</a></td><td width="24"></td><td style="font-family:Helvetica,Arial,sans-serif;padding-right:48px;line-height:18px;color:rgb(102,102,102);font-size:12px">8011 CA Zwolle</td></tr></tbody></table></td></tr><tr><td height="24"></td></tr><tr><td style="font-family:Helvetica,Arial,sans-serif;line-height:15px;color:rgb(102,102,102);font-size:10px">This e-mail message may contain confidential or legally privileged information and is intended only for the use of the intended recipient(s). Any unauthorized disclosure, dissemination, distribution, copying or the taking of any action in reliance on the information herein is prohibited. E-mails are not secure and cannot be guaranteed to be error free as they can be intercepted, amended, or contain viruses. Anyone who communicates with us by e-mail is deemed to have accepted these risks. EGM Media is not responsible for errors or omissions in this message and denies any responsibility for any damage arising from the use of e-mail. Any opinion and other statement contained in this message and any attachment are solely those of the author and do not necessarily represent those of the company.</td></tr></tbody></table></div></div></div></div></div>
<br><div class="gmail_quote">2016-05-01 22:35 GMT+02:00 EGM Media | Lennart van Ballegoij <span dir="ltr"><<a href="mailto:lennart@egmmedia.nl" target="_blank">lennart@egmmedia.nl</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hey Guys,<div><br><div><br></div><div>I've got a strange problem that i can't seem to understand, hopefully someone can help me out.</div><div><br></div><div><br></div><div><b>The situation:</b></div><div><b><br></b></div><div><br></div><div>I created an custom module"ControlBarcode" that is used by my client to scan barcodes on Sales orders.</div><div><br></div><div>When scanned it retrieves the Sales Order and displays this to the client, the client can then scan 1 of the control Barcodes to preform a action on the Sales Order (Like: changing a field to a preset value)</div><div><br></div><div><br></div><div>I created a barcode that creates an Invoice when the code is scanned, this all seems to work without any problems.</div><div><br></div><div>But after the Invoice is created i need to run a couple of workflows and after those workflows are complete the Invoice needs to be send to a Web-service.</div><div><br></div><div>To send the Invoice to a Web-service i created a custom module that uses an Eventhandler to preform the call to the Web-service.</div><div><br></div><div>This Eventhandler gets ran after every Invoice save but only preforms an action when the custom field in the invoice is set to "SENDTOREELEEZEE".</div><div><br></div><div><br></div><div>I created a couple of Workflows with the help of Workflow Designer(a third party module) they get triggerd by 1 initial workflow than gets triggerd on an 'on every save' event.</div><div><br></div><div>This Workflow checks if a custom field is filled if so it will preform actions and then trigger the next workflow and so on.</div><div><br></div><div>When the last Workflow got triggerd we change the custom field in the invoice to "SENDTOREELEEZEE" so the Eventhandler can preform it's task.</div><div><br></div><div><br></div><div>Here is where my unexpected error occurs, the Invoice does not get send to the Web-service because it can't find any products assigned to the invoice.</div><div><br></div><div>I'm using the following code in my Eventhandler to check for the assigned products:</div><div><br>
<pre>$invoicedata['invoiceid'] = $data->getID();
<br>
$query = $adb->pquery("select productid, quantity, listprice from vtiger_inventoryproductrel where id = ?",array($invoicedata['invoiceid']));
</pre>
</div><div><br></div><div><br></div><div><br></div><div>The strange part is that if i check the Invoice after all these Workflows get ran that the Invoice does contain products.</div><div><br></div><div>Also if i run the db query after these Workflows get ran the query does retrieve the right products.</div><div><br></div><div><br></div><div>So for some reason the products get unassigned in the save event and never trigger a resave when the products get reassigned, therefore my Eventhandler can't preform the call to the web service.<br></div><div><br></div><div>I <b>attached a image</b> to this email to visualize the tasks the invoice goes through before the error occurs.</div><div><br></div><div><br></div><div>Hopefully someone can help me out.</div><div><br></div><div>Thanks in advance!</div><div><br></div><div><br></div><div>Kind regards,</div><div><br></div><div>Lennart</div></div></div>
</blockquote></div><br></div>