Progress Software App - Compile Error

Get ready for the “way back machine” :joy:

We moved from one server to another. Everything was peachy, but several BPMs started to fail. Found it was because the .p files were missing when a Data Directive or BPM called them. Using the old server, I moved the .p files over to the same paths on the new server. I can now call the .p files from the data directives, but now the .p files don’t work.

Though I’m calling my .p files just fine, the .p files themselves are failing. When I compile them in the handy-dandy Progress Software App, I get:

So, I moved those folders and files to their respective places as indicated in the error. For example:

After doing that, and setting security so everyone could read/write, I still get the error. Does anyone know what I’m missing? I’m truly lost in these old-tech weeds, lol. Thanks to anyone who could spend some time to point me in a direction.

1 Like

maybe PATH in the environment variables?

4 Likes

If i remember the .p files are compiled to .r files. That may be a Runtime thing - I have to break through some cobwebs for this one.

I would guess re-compile would have worked. I will keep noodling
DaveO

2 Likes

Also try going to Directives Update, there is a Recompile tab see if you can recompile all the BPMs

2 Likes

I’m not sure I follow. Directives Update? Is that in the app builder?

1 Like

I am sorry, its in Epicor

System Management -> Business Process Management -> Directive Update

4 Likes

Thank you. Each of the BPMs were recompiled successfully. Sadly, now when I try to make the same transaction, I get a 4GL STOP error:

Error Detail

4GL STOP condition: The Server application has returned an error. (7243) (7241)

Stack Trace

at Progress.Open4GL.DynamicAPI.Session.runProcedure(String requestID, String procedureName, ParameterSet parms, Boolean persistent, Boolean internal_Renamed, Int64 procId, MetaSchema localSchema, Int32 stateModel)
at Progress.Open4GL.DynamicAPI.Session.runStatelessProcedure(String requestID, String fullProcedureName, ParameterSet inparams, Object procId, MetaSchema localSchema, Int32 stateModel)
at Progress.Open4GL.DynamicAPI.PersistentProc.runTheProcedure(String requestID, String procedureName, ParameterSet parms, MetaSchema schema)
at Progress.Open4GL.DynamicAPI.PersistentProc.runProcedure(String procedureName, ParameterSet parms, MetaSchema schema)
at Epicor.Mfg.Core.CallContext.CallContextPersistentProc.runProcedure(String procedureName, ParameterSet parameters, MetaSchema metaSchema)
at Epicor.Mfg.Core.CallContext.ProxyHelper.CallMethod(String methodName, ParameterSet parameters, MetaSchema metaSchema, BLConnectionPool connPool, Session connection, PersistentProc persistProc, CallContextDataSet callContextDataSet)
at Epicor.Mfg.Proxy.JobEntryImpl.Update(JobEntryDataSet ds)
at Epicor.Mfg.UI.Adapters.JobEntryAdapter.Update()
at Epicor.Mfg.UI.App.JobEntry.Transaction.Update()

I guess the BPM was never running before… and now that it is, I get this error. We are also getting other errors related to .p files…


Message: ERROR condition: bo/LotSelectUpdate/Sink.p Singleton main-block procedure ended with an ERROR condition. (8025) (7211)

I assume this is from custom .p files, but the .r files are in there. I appreciate any direction that could be provided.

1 Like

And no worries! I’m the one who should be sorry, lol

1 Like

I can open and manipulate .p files, but it wont let me manipulate .r files. So if I have to manipulate, how would one do that? Also, I noticed there isn’t a db connection setup in AppBuilder:

Maybe that’s it? The .p files have no place to look for these i files?

1 Like

Ok, so new update folks. When I load a procedure in AppBuilder, I see at the top it’s ‘pointing’ to the old server that ends in “APP1”:
image

The server the .p files and Epicor are on now are the “APP2” server.

Since the regen, I am seeing temp files appear in the old APP1 server’s folders and nothing is happening on APP2… How do I ‘point’ these .p files to APP2? Is that what @Olga meant?

1 Like

@klincecum:

1 Like

Nevermind… wrong .p file opened… The .p files ARE in App2 afterall, but the temp files (I assume) are going to the old server ever since I did the regen:

There is no reason for a file to be placed in this folder today, and since the regen, they started popping in there. Has to be a disconnect somewhere…

1 Like

:joy:

1 Like

Is it possible to expand on this? Would this be something I would setup in the AppBuilder?

1 Like

Ok, maybe some more help from my side.

In my .p file, when I have the line:

{Bpm/Bpm.i &OBJECT_NAME=“JobHead” &BPM_BO_SOURCE_DB=1 &CUSTCODE=1 &CUR-COMP=“”}

I get the error:
image

When I change it to:
{E:/Epicor/Epicor905/Server/Bpm/Bpm.i &OBJECT_NAME=“JobHead” &BPM_BO_SOURCE_DB=1 &CUSTCODE=1 &CUR-COMP=“”}

It finds it. No more error. How do I point AppBuilder to that path so I don’t have to hard-code it?

1 Like

Thank you @hkeric.wci !!! In the end, this was it.

I’m gonna go cry now…

1 Like

To help anyone else who may fall into this. Don’t even concern yourself with AppBuilder and its errors. If the .p files are copied into the path, and your BPM “points” to the same path:

Run Directive Update and recompile “both outdated and up-to-date directives”.

4 Likes