Is their a way I can do something on line change or " new line" load? Trying to set data on all lines
Use the trace log for this…but it’s very likely “GetNew[X]Dtl” on whatever BO you’re using
yes it is, But how would I find the parameters with the trace method. It shows what parameters were used, but doesn’t say how they were found.
Not sure I understand the question. The trace will tell you what method occurred when you perform an action on a UI. The series of transactions leading to that supply the subsequent transactions with the appropriate method parameters.
Right, but for example:
it generates a function with the string equaling to string.empty. Do you just pass the variable there and trigger the method and it works?
Would you mind sharing more info? like what does your trace look like for that method?
The BL Tester utility is awesome for this kind of stuff too, since it allows you to basically step through transactions with supplying parameters, etc. Sometimes, a transaction will have an “empty” parameter but relies on the actual data row(s) to be modified before it accepts a change
<tracePacket>
<businessObject>Erp.Proxy.BO.ReqImpl</businessObject>
<methodName>CheckPartStatus</methodName>
<returnType>System.Void</returnType>
<localTime>5/1/2019 10:07:01:9152859 AM</localTime>
<threadID>1</threadID>
<executionTime total="63" roundTrip="62" channel="0" bpm="0" other="1" />
<retries>0</retries>
<parameters>
<parameter name="partNum" type="System.String"><![CDATA[0.48X437X1395S18CRCB]]></parameter>
<parameter name="vMessage" type="System.String"><![CDATA[]]></parameter>
<parameter name="vSubAvail" type="System.Boolean"><![CDATA[False]]></parameter>
<parameter name="vMsgType" type="System.String"><![CDATA[]]></parameter>
</parameters>
</tracePacket>
<tracePacket>
<businessObject>Erp.Proxy.BO.ReqImpl</businessObject>
<methodName>GetPartCrossRef</methodName>
<returnType>System.Void</returnType>
<localTime>5/1/2019 10:07:01:9792859 AM</localTime>
<threadID>1</threadID>
<executionTime total="59" roundTrip="55" channel="0" bpm="0" other="4" />
<retries>0</retries>
<parameters>
<parameter name="ds" type="Erp.BO.ReqDataSet">
<ReqDataSet xmlns="http://www.epicor.com/Ice/300/BO/Req/Req" />
</parameter>
<parameter name="reqLine" type="System.Int32"><![CDATA[0]]></parameter>
<parameter name="partNum" type="System.String"><![CDATA[0.48X437X1395S18CRCB]]></parameter>
<parameter name="uomCode" type="System.String"><![CDATA[]]></parameter>
<parameter name="SysRowID" type="System.Guid"><![CDATA[00000000-0000-0000-0000-000000000000]]></parameter>
<parameter name="rowType" type="System.String"><![CDATA[]]></parameter>
<parameter name="multipleMatch" type="System.Boolean"><![CDATA[False]]></parameter>
</parameters>
</tracePacket>
<tracePacket>
<businessObject>Erp.Proxy.BO.ReqImpl</businessObject>
<methodName>GetPartInfo</methodName>
<returnType>System.Void</returnType>
<localTime>5/1/2019 10:07:02:0492859 AM</localTime>
<threadID>1</threadID>
<executionTime total="135" roundTrip="131" channel="0" bpm="0" other="4" />
<retries>0</retries>
<parameters>
<parameter name="ds" type="Erp.BO.ReqDataSet">
<ReqDataSet xmlns="http://www.epicor.com/Ice/300/BO/Req/Req" />
</parameter>
<parameter name="uomCode" type="System.String"><![CDATA[]]></parameter>
</parameters>
</tracePacket>
So it does this all when we just select a part
So what that tells me is that those 3 methods are tied together in that they perform validations of the same dataset.
I think ultimately you’re going to need to tie your logic to the last method executed
which would be getpartinfo
Correct
It just wants me to pass the uom code? and it should work? with the adapter?
Use the BL Tester to find out/test the behavior. Just keep in mind, the BL tester points to an environment and actually performs the transactions, so make sure it’s pointed at a development environment before using.