Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Dear All ,
I have a Mail_Alert.QVW from which we send emails to the customers of East,West,North & South Zones.
After sending mails of all zones document saved & quit but some times after sending mails of East "E" Zone or South "S" zone or North "N" Zone or West "W" Zone it stops & goes in edit module mode.
There are multiple reasons possible. For example an invalid mail-address, a missing attachment, errors with the network/storage, too high usage of CPU + RAM and probably many more.
Helpful are often WaitForIdle statements after activating sheets/objects or selecting any values in Qlik. Also sleep statements after a save-statement. Further checking-routines if the mail-adresses are valid, the attachments available und similar things. If this didn't help you will need to add some trace/logging-steps to find the breaking-points and when it happens to find any pattern for the failures.
- Marcus
Dear Mr. Marcus.
Special thanks for immediate response.
Please explain clearly that where I have to use WaitForIdle statements & how?
Please mention sleep statements with examples.
How can I follow trace/logging-steps to find the breaking-points ?
With regards,
AKM
- WaitForIdle statements after activating sheets/objects or selecting any values
ActiveDocument.WaitForIdle
- sleep statements after a actions which export, save, move, copy files within the filesystem or copying, writing in other tools or calling other tools like the CDO or another mailing-tool
ActiveDocument.GetApplication.Sleep 1000
- tracing meant to use msgbox to return the variable-values and the loop-counter
- a logging could be done in a excel- or a text-file with routines like this: Re: Load data from multiple sheets of excel file(dynamic sheet count)
- Marcus
Again special thanks for proper response but I am unable to understand that in the pasted macro code where I can put the "ActiveDocument.WaitForIdle" or "ActiveDocument.GetApplication.Sleep 1000" & what will be the benefits.
My target is to send the complete emails of all Zones without any halt in the execution of macro.
I have checked & found that pasted macro code is OK & it executes fine but some times macro execution stop in the middle.
I have to find the main root cause that why execution is stopping some times.
Please help me step by step that how can find the root cause & where I have to make change in the pasted code.
Regards,
AKM
Examples ...
...
ActiveDocument.Fields("PARENT_ID").Select Temp(i).Text
ActiveDocument.WaitForIdle
...
objEmail.AddAttachment "D:\MAIL ALERTS\Opti_Customer_Invoice_Mail_Alert\" & Parent_name.Item(0).Text &"-"& Temp(i).Text & ".xls"
ActiveDocument.GetApplication.Sleep 1000
...
FSOObj.DeleteFile ("D:\MAIL ALERTS\Opti_Customer_Invoice_Mail_Alert\*.*"), True
ActiveDocument.GetApplication.Sleep 1000
...
These methods have the aim to ensure that the following step didn't starts before the previous step has finished. That your code sometimes runs proved that it in general worked but if your server/machine/storage is busy with whatever it might delay some steps ... and could result in random failures.
- Marcus