Our Test environment which is a copy of the Production environment has the Email in the company config set up the same as Production with the same smpt server and port. Is there somewhere else that emails are being disabled that we should be aware? What else do we need to disable if we want our clone Test environment to not send out emails?
You would have to disable all of your BAMs and BPMs that send out emails that were enabled in Production to prevent them from sending emails from Test.
If we remove the email smtp from the company config, will this disable all emails including BAMs? Or are BAMs independent of the company config’s email setup?
By changing the SMTP server setting on the company record you would prevent emails from being sent out of the Test database in much the same way as simply disabling the global alert email server process on the system agent schedule–it would not prevent the email records from being queued in the Test database.
I checked and the global alert email task is not enabled or running so it shouldn’t be sending any emails out from the test database. By disabling the global alert email server process in the system monitor this should prevent emails from being sent?
Yes, until someone accidentally submits the global alert email server process to the schedule in Test.
I use a sql script that I originally got the the Yahoo group. It removes all of the tasks i don’t want to happen in test and changes the ports.
It is a txt file and not sql since sql is not allowed by the site. Once you modify for you environment it makes the process much faster.
Set Test Database values.txt (1.0 KB)
We do have a sql script below that deletes the scheduled jobs. I’m not sure what else could be triggering the email if there are no scheduled tasks in the system monitor.
–Delete Scheduled Jobs
truncate table SysAgentTask
–Purge Job History
truncate table systask
truncate table systasklog
truncate table systaskparam
Are the ports also being changed to the test appservers somewhere in the process? You have to do in in a script or in the app before starting print/process/task agents.
Yes, the ports are updated to the correct Test appserver.
– Change System Agent to Use Test Application Servers
set AppServerURL = ‘AppServerDC://X:9433’,
MfgSysAppServerURL = ‘AppServerDC://X:9431’,
FileRootDir = ‘\X\Epicordata,\X\Epicordata,\X\Epicor905\server’
FWIW - I Always change the company name in our test environment to something like “!!! TEST COMPANY !!!”
Then in BPM’s and Break/Routing Print styles, check for the company name, If it’s not our actual company name, it exits before sending, or just sends to me.
During test of email functionality, I’ll include some condition or code that requires it to be my userid when it’s in the test company.
For scheduled reports and whatnot, I’ll go into the SysAgent and disable the schedule.
In an effort to win the less-than-helpful award for Epicor 9 issues…
In 10.2+, there is now a command line interface that let’s you do all this stuff without the memorization and the less-than-supported-method of SQL scripts. Create a batch script that copies your database, alters the task agent, rename your company name (via REST), and be done with it. Something you can look forward to…
The user said they are still receiving emails from the Test environment even though the server process is not enabled but need to verify the actual email sent. I do see customizations on the Receipt Entry form where its being triggered so could there be a customization that is bypassing the global alerts server email process to be sending the email or does all email go through the global alert email server process even when using a customization?
During the script copy, it does purge all the SysAgent scheduled jobs including the global alerts email server process. Still not sure how its sending the email or what else to look for.
Does the test environment a share the SSRS with Production? Possibly being generated by the SSRS?
No, they are on separate SSRS database instances.
It seems like the customization is bypassing Epicor’s email server process. How is this possible?
Some people have used C# code to automate the local Outlook client so they get the bounce-backs if any and a history in the Sent folder. (One example here: Email via C# Blank Title 127619)
I do see we have a BPM method directive with ABL code using a .r file. I am not able to view the code to look into it more on how it’s sending the emails. How can we view the ABL .r file?
Going from memory, there was a Progress decompiler out there but it might have gotten locked down. 9http://www.oehive.org/node/1952) but hopefully you can find the associated .p program if you search your server or the system of the person who might have done it.
This could be a BAM. These are usually compiled and placed in the bpm folder. There should be one for test, live, pilot, etc. To stop the one running in test, you could just move it out of the folder.