Chris_Conn
(Chris Conn)
December 27, 2016, 6:25pm
1
Can anyone help me get to the bottom of this exception from LaborAdapter.SelectForWork:
Labor Header has not changed.
Doing trace I can see that prior to that call there is:
LaborAdapter.GetNewLaborDtlOnSelectForWorkMethod
I figure I have to get a new labor dtl but it wants me to pass in laborHedSeq. Where do I get this? I do not see a call in the trace to GetNewLaborHed so how did the MES screen know what value to pass there?
I am sure that most of this issue is my lack of understanding the tables and their uses in the system as a whole.
josecgomez
(Jose C Gomez)
December 27, 2016, 6:47pm
2
When you Clock In a LaborHed record is created you can do a lookup on it for activetrans = true that gets you the LaborHed SeqâŚ
Chris_Conn
(Chris Conn)
December 27, 2016, 6:50pm
3
And Jose to the rescue again. Off the top of your head, am I better off going through an adapter for that query or just using a BAQ with current emp and activetrans = true?
josecgomez
(Jose C Gomez)
December 27, 2016, 6:51pm
4
You can do LaborAdapter.GetRows and pass a whereClause or write a BAQ>⌠that is upto you
Chris_Conn
(Chris Conn)
December 27, 2016, 7:27pm
5
Jose wins.
SearchOptions opts = new SearchOptions(SearchMode.AutoSearch);
bool more;
opts.PageSize = 20; //return this many
string whereSeq = string.Format("ActiveTrans = TRUE and EmployeeNum = '{0}'",((Ice.Core.Session)oTrans.Session).EmployeeID.ToString());
opts.NamedSearch.WhereClauses.Add("LaborHed",whereSeq);
var lbr = adapterLabor.GetRows(opts, out more);
MessageBox.Show(lbr.Tables[0].Rows[0]["LaborHedSeq"].ToString());
Chris_Conn
(Chris Conn)
December 27, 2016, 8:00pm
6
@josecgomez.trigemco
But wait thereâs more!
I am passing these params to GetNewLaborDtlOnSelectForWork:
And I get this wonderful exception:
That exception happens only once. If I try again it doesnât occur (although I am still getting âLabor Header has not changedâ)
josecgomez
(Jose C Gomez)
December 27, 2016, 8:03pm
7
What params⌠paste the codeâŚ
Chris_Conn
(Chris Conn)
December 27, 2016, 8:09pm
8
adapterLabor.GetNewLaborDtlOnSelectForWork(Convert.ToInt32(lbr.Tables[0].Rows[0]["LaborHedSeq"].ToString()),epiUltraGridJobs.Selected.Rows[0].Cells["JobHead_JobNum"].Text,Convert.ToInt32(epiUltraGridJobs.Selected.Rows[0].Cells["JobOpDtl_AssemblySeq"].Text),Convert.ToInt32(epiUltraGridJobs.Selected.Rows[0].Cells["JobOpDtl_OprSeq"].Text),epiUltraGridJobs.Selected.Rows[0].Cells["JobOpDtl_ResourceGrpID"].Text,"B",out prompt);
3645, âF000007486â,0,10,âPRGP0500â,âBâ
Interestingly, I noted the error title referenced the wrong resource group so I removed some other test code where I was selecting the group in the title. Now, the error title is:
Oooh, maybe I need to pass the resource group of the Employee
Nope - No change.
Chris_Conn
(Chris Conn)
December 28, 2016, 2:29pm
9
Table: LaborDtl
Company=âCPâ LaborHedSeq=â3645â LaborDtlSeq=â136612â SysRowID=â00000000-0000-0000-0000-000000000000â: ForeignKeyConstraint LaborHedLaborDtl requires the child key values (CP, 3645) to exist in the parent table. â> System.Data.ConstraintException: Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints.
josecgomez
(Jose C Gomez)
December 28, 2016, 2:36pm
10
It thinks that the LaborHead doesnât existâŚ
Run a Trace on this manually and make sure you are making all the correct calls.
Chris_Conn
(Chris Conn)
December 28, 2016, 3:57pm
11
There are a lot of calls I donât recognize, mainly IMPLs, a few of which appear to be loading the customization. Apologies in advance for this long post but I did trim it as much as possible, leaving only the relevant info. This is start to finish (of the working, default operation):
<businessObject>Ice.Proxy.BO.GenXDataImpl</businessObject>
<methodName>GetList</methodName>
<returnType>XXXDefListTableset</returnType>
<parameter name="whereClause" type="System.String"><![CDATA[Key2 = 'App.WorkQueueEntry.WorkQueueForm']]></parameter>
<businessObject>Ice.Proxy.BO.GenXDataImpl</businessObject>
<methodName>GetList</methodName>
<returnType>XXXDefListTableset</returnType>
<parameter name="whereClause" type="System.String"><![CDATA[Key2 = 'App.WorkQueueEntry.WorkQueueForm']]></parameter>
<businessObject>Ice.Proxy.BO.GenXDataImpl</businessObject>
<methodName>GetRows</methodName>
<returnType>GenXDataTableset</returnType>
<parameter name="whereClauseXXXDef" type="System.String"><![CDATA[Company = 'CP' AND ProductID = 'EP' AND TypeCode = 'Customization' AND CGCCode = '' AND Key1 = 'WORKQ_DEFAULTVALUES_CC' AND Key2 = 'App.WorkQueueEntry.WorkQueueForm' AND Key3 = '']]></parameter>
<businessObject>Ice.Proxy.BO.GenXDataImpl</businessObject>
<methodName>GetRows</methodName>
<returnType>GenXDataTableset</returnType>
<parameter name="whereClauseXXXDef" type="System.String"><![CDATA[Company = 'CP' AND ProductID = 'EP' AND TypeCode = 'Customization' AND CGCCode = '' AND Key1 = 'WORKQ_DEFAULTVALUES_CC' AND Key2 = 'App.WorkQueueEntry.WorkQueueForm' AND Key3 = '']]></parameter>
<businessObject>Ice.Proxy.Lib.BOReaderImpl</businessObject>
<methodName>GetRows</methodName>
<returnType>System.Data.DataSet</returnType>
<parameter name="serviceNamespace" type="System.String"><![CDATA[Ice:BO:Company]]></parameter>
<parameter name="whereClause" type="System.String"><![CDATA[Company = 'CP']]></parameter>
<parameter name="columnList" type="System.String"><![CDATA[ESEURL,ESENotificationSourceID]]></parameter>
<businessObject>Ice.Proxy.Lib.BOReaderImpl</businessObject>
<methodName>GetRows</methodName>
<returnType>System.Data.DataSet</returnType>
<parameter name="serviceNamespace" type="System.String"><![CDATA[Ice:BO:UserFile]]></parameter>
<parameter name="whereClause" type="System.String"><![CDATA[UserID = 'CConn']]></parameter>
<parameter name="columnList" type="System.String"><![CDATA[ESEUserID,ESEPassword,DomainName,OSUserId]]></parameter>
<businessObject>Erp.Proxy.BO.EmpBasicImpl</businessObject>
<methodName>GetList</methodName>
<returnType>EmpBasicListTableset</returnType>
<parameter name="whereClause" type="System.String"><![CDATA[EmpID = 'cconn' BY Name]]></parameter>
<businessObject>Erp.Proxy.BO.CompanyImpl</businessObject>
<methodName>GetMaxWorkQueueRecords</methodName>
<returnType>System.Int32</returnType>
<businessObject>Erp.Proxy.BO.WorkQueueImpl</businessObject>
<methodName>GetOpsInResourceGroup</methodName>
<returnType>WorkQueueTableset</returnType>
<parameter name="pcResourceGrpID" type="System.String"><![CDATA[PRLABOR]]></parameter>
<parameter name="pcEmpID" type="System.String"><![CDATA[cconn]]></parameter>
<businessObject>Erp.Proxy.BO.JobOperSearchImpl</businessObject>
<methodName>GetRows</methodName>
<returnType>JobOperSearchTableset</returnType>
<parameter name="whereClauseJobOper" type="System.String"><![CDATA[]]></parameter>
<businessObject>Ice.Proxy.Lib.ClientCacheImpl</businessObject>
<methodName>GetClassInformation</methodName>
<returnType>Ice.Tablesets.ClassAttributeTableset</returnType>
<parameter name="token" type="System.String"><![CDATA[JCDept]]></parameter>
<parameter name="additionalTokens" type="System.String[]"><![CDATA[]]></parameter>
<parameter name="objectAccess" type="System.Boolean"><![CDATA[False]]></parameter>
<parameter name="nameSpace" type="System.String"><![CDATA[Erp:BO]]></parameter>
<tracePacket>
<businessObject>Ice.Proxy.Lib.ClassAttributeImpl</businessObject>
<methodName>GetAttributes</methodName>
<returnType>ClassAttributeTableset</returnType>
<parameter name="classNames" type="System.String"><![CDATA[JCDept]]></parameter>
<parameter name="nameSpace" type="System.String"><![CDATA[Erp.BO]]></parameter>
<BpmData>
<SysRowID>0f81d587-c733-47da-87fa-2fdf18b46a7e</SysRowID>
</BpmData>
<businessObject>Erp.Proxy.BO.JCDeptImpl</businessObject>
<methodName>GetList</methodName>
<returnType>JCDeptListTableset</returnType>
<parameter name="whereClause" type="System.String"><![CDATA[ BY JCDept]]></parameter>
<businessObject>Ice.Proxy.BO.NamedSearchImpl</businessObject>
<methodName>GetRows</methodName>
<appServerUri>net.tcp://jpe10prod/E10LiveDB2/</appServerUri>
<returnType>NamedSearchTableset</returnType>
<parameter name="whereClauseNamedSearch" type="System.String"><![CDATA[ProductID = 'EP' AND SearchForm = 'Resource Group Search' AND CalledFrom = 'Erp.UI.WorkQueueEntry.dll' AND UserId = 'CConn']]></parameter>
<businessObject>Ice.Proxy.BO.QuickSearchImpl</businessObject>
<methodName>GetBaseDefault</methodName>
<appServerUri>net.tcp://jpe10prod/E10LiveDB2/</appServerUri>
<returnType>System.Void</returnType>
<localTime>12/28/2016 08:39:06:1743869 AM</localTime>
<executionTime>72</executionTime>
<parameters>
<parameter name="likeTableAndField" type="System.String"><![CDATA[ResourceGroup.ResourceGrpID]]></parameter>
<parameter name="callFrom" type="System.String"><![CDATA[Erp.UI.WorkQueueEntry]]></parameter>
<parameter name="baseSearchId" type="System.String"><![CDATA[]]></parameter>
<parameter name="CallContext" type="Ice.Bpm.Context.ContextDataSet">
<businessObject>Erp.Proxy.BO.ResourceGroupImpl</businessObject>
<methodName>GetList</methodName>
<returnType>ResourceGroupListTableset</returnType>
<parameter name="whereClause" type="System.String"><![CDATA[JCDept = 'MOLDING' BY Description]]></parameter>
<businessObject>Erp.Proxy.BO.CompanyImpl</businessObject>
<methodName>GetMaxWorkQueueRecords</methodName>
<returnType>System.Int32</returnType>
<businessObject>Erp.Proxy.BO.WorkQueueImpl</businessObject>
<methodName>GetOpsInResourceGroup</methodName>
<returnType>WorkQueueTableset</returnType>
<parameter name="pcResourceGrpID" type="System.String"><![CDATA[PRGP0300]]></parameter>
<parameter name="pcEmpID" type="System.String"><![CDATA[cconn]]></parameter>
>
<businessObject>Erp.Proxy.BO.OpMasterImpl</businessObject>
<methodName>GetList</methodName>
<returnType>OpMasterListTableset</returnType>
<parameter name="whereClause" type="System.String"><![CDATA[OpCode = 'MOLDING' BY OpDesc]]></parameter>
<businessObject>Erp.Proxy.BO.LaborImpl</businessObject>
<methodName>GetRows</methodName>
<returnType>LaborTableset</returnType>
<parameter name="whereClauseLaborHed" type="System.String"><![CDATA[ActiveTrans = true AND EmployeeNum = 'cconn' BY PayrollDate]]></parameter>
<parameter name="whereClauseLaborDtl" type="System.String"><![CDATA[SysRowId = '00000000-0000-0000-0000-000000000000']]></parameter>
<parameter name="whereClauseLaborDtlAttch" type="System.String"><![CDATA[]]></parameter>
<parameter name="whereClauseLaborDtlComment" type="System.String"><![CDATA[]]></parameter>
<parameter name="whereClauseLaborEquip" type="System.String"><![CDATA[SysRowId = '00000000-0000-0000-0000-000000000000']]></parameter>
<parameter name="whereClauseLaborPart" type="System.String"><![CDATA[SysRowId = '00000000-0000-0000-0000-000000000000']]></parameter>
<parameter name="whereClauseLbrScrapSerialNumbers" type="System.String"><![CDATA[SysRowId = '00000000-0000-0000-0000-000000000000']]></parameter>
<parameter name="whereClauseLaborDtlGroup" type="System.String"><![CDATA[SysRowId = '00000000-0000-0000-0000-000000000000']]></parameter>
<parameter name="whereClauseSelectedSerialNumbers" type="System.String"><![CDATA[SysRowId = '00000000-0000-0000-0000-000000000000']]></parameter>
<parameter name="whereClauseSNFormat" type="System.String"><![CDATA[SysRowId = '00000000-0000-0000-0000-000000000000']]></parameter>
<parameter name="whereClauseTimeWeeklyView" type="System.String"><![CDATA[]]></parameter>
<parameter name="whereClauseTimeWorkHours" type="System.String"><![CDATA[SysRowId = '00000000-0000-0000-0000-000000000000']]></parameter>
<businessObject>Erp.Proxy.BO.LaborImpl</businessObject>
<methodName>GetNewLaborDtlOnSelectForWork</methodName>
<returnType>System.Void</returnType>
<paramDataSetChanges>
<paramDataSet name="ds" useDataSetNbr="0">
<changedValue tableName="LaborHed" rowState="Modified" rowNum="0" colName="RowMod"><![CDATA[U]]></changedValue>
</paramDataSet>
</paramDataSetChanges>
<businessObject>Ice.Proxy.BO.GenXDataImpl</businessObject>
<methodName>GetList</methodName>
<returnType>XXXDefListTableset</returnType>
<parameter name="whereClause" type="System.String"><![CDATA[Key2 = 'WorkQueueEntry.Forms.SelectForWorkForm']]></parameter>
<parameter name="pageSize" type="System.Int32"><![CDATA[0]]></parameter>
<parameter name="absolutePage" type="System.Int32"><![CDATA[0]]></parameter>
<parameter name="morePages" type="System.Boolean"><![CDATA[False]]></parameter>
<parameter name="CallContext" type="Ice.Bpm.Context.ContextDataSet">
<ContextDataSet xmlns="http://www.epicor.com/Ice/300/Bpm/Context">
<BpmData>
<SysRowID>1aef008a-117d-431a-a9e0-9ebf7a13bb9e</SysRowID>
</BpmData>
<businessObject>Ice.Proxy.BO.GenXDataImpl</businessObject>
<methodName>GetList</methodName>
<returnType>XXXDefListTableset</returnType>
<parameter name="whereClause" type="System.String"><![CDATA[Key2 = 'WorkQueueEntry.Forms.SelectForWorkForm']]></parameter>
<parameter name="pageSize" type="System.Int32"><![CDATA[0]]></parameter>
<parameter name="absolutePage" type="System.Int32"><![CDATA[0]]></parameter>
<parameter name="morePages" type="System.Boolean"><![CDATA[False]]></parameter>
<parameter name="CallContext" type="Ice.Bpm.Context.ContextDataSet">
<ContextDataSet xmlns="http://www.epicor.com/Ice/300/Bpm/Context">
<BpmData>
<SysRowID>1aef008a-117d-431a-a9e0-9ebf7a13bb9e</SysRowID>
</BpmData>
<businessObject>Ice.Proxy.Lib.BOReaderImpl</businessObject>
<methodName>GetList</methodName>
<returnType>System.Data.DataSet</returnType>
<parameter name="serviceNamespace" type="System.String"><![CDATA[Erp:BO:Resource]]></parameter>
<parameter name="whereClause" type="System.String"><![CDATA[(ResourceGrpID = 'PRGP0300')]]></parameter>
<parameter name="columnList" type="System.String"><![CDATA[ResourceID,ResourceGrpID,Description]]></parameter>
<businessObject>Erp.Proxy.BO.LaborImpl</businessObject>
<methodName>SelectForWork</methodName>
<appServerUri>net.tcp://jpe10prod/E10LiveDB2/</appServerUri>
<returnType>System.Void</returnType>
<businessObject>Erp.Proxy.BO.LaborImpl</businessObject>
<methodName>CheckWarnings</methodName>
<appServerUri>net.tcp://jpe10prod/E10LiveDB2/</appServerUri>
<returnType>System.Void</returnType>
<businessObject>Erp.Proxy.BO.LaborImpl</businessObject>
<methodName>CheckFirstArticleWarning</methodName>
<appServerUri>net.tcp://jpe10prod/E10LiveDB2/</appServerUri>
<returnType>System.Void</returnType>
<businessObject>Erp.Proxy.BO.LaborImpl</businessObject>
<methodName>Update</methodName>
<appServerUri>net.tcp://jpe10prod/E10LiveDB2/</appServerUri>
<returnType>System.Void</returnType>
<localTime>12/28/2016 08:39:31:7015325 AM</localTime>
<executionTime>226</executionTime>
<businessObject>Erp.Proxy.BO.CompanyImpl</businessObject>
<methodName>GetMaxWorkQueueRecords</methodName>
<appServerUri>net.tcp://jpe10prod/E10LiveDB2/</appServerUri>
<returnType>System.Int32</returnType>
<businessObject>Erp.Proxy.BO.WorkQueueImpl</businessObject>
<methodName>GetOpsInResourceGroup</methodName>
<appServerUri>net.tcp://jpe10prod/E10LiveDB2/</appServerUri>
<returnType>WorkQueueTableset</returnType>
<parameter name="pcResourceGrpID" type="System.String"><![CDATA[PRGP0300]]></parameter>
<parameter name="pcEmpID" type="System.String"><![CDATA[cconn]]></parameter>
<businessObject>Erp.Proxy.BO.CompanyImpl</businessObject>
<methodName>GetMaxWorkQueueRecords</methodName>
<returnType>System.Int32</returnType>
<businessObject>Erp.Proxy.BO.WorkQueueImpl</businessObject>
<methodName>GetOpsInResourceGroup</methodName>
<appServerUri>net.tcp://jpe10prod/E10LiveDB2/</appServerUri>
<returnType>WorkQueueTableset</returnType>
<localTime>12/28/2016 08:39:32:8711872 AM</localTime>
<executionTime>469</executionTime>
<parameters>
<parameter name="pcResourceGrpID" type="System.String"><![CDATA[PRGP0300]]></parameter>
<parameter name="pcEmpID" type="System.String"><![CDATA[cconn]]></parameter>
<tracePacket>
<businessObject>Erp.Proxy.BO.LaborImpl</businessObject>
<methodName>GetRows</methodName>
<appServerUri>net.tcp://jpe10prod/E10LiveDB2/</appServerUri>
<returnType>LaborTableset</returnType>
<parameter name="whereClauseLaborHed" type="System.String"><![CDATA[EmployeeNum = 'cconn' and ActiveTrans = yes BY PayrollDate]]></parameter>
josecgomez
(Jose C Gomez)
December 28, 2016, 4:16pm
12
That method in your trace doesnât appear to take any parameters in? Furthermore notice that they set the RowMod on LaborHead to U. Are you doing this?
<businessObject>Erp.Proxy.BO.LaborImpl</businessObject>
<methodName>GetNewLaborDtlOnSelectForWork</methodName>
<returnType>System.Void</returnType>
<paramDataSetChanges>
<paramDataSet name="ds" useDataSetNbr="0">
<changedValue tableName="LaborHed" rowState="Modified" rowNum="0" colName="RowMod"><![CDATA[U]]></changedValue>
</paramDataSet>
</paramDataSetChanges>
Chris_Conn
(Chris Conn)
December 28, 2016, 4:20pm
13
I assumed that was showing me that that call had made those changes. Am I wrong?
Here is the unabridged version of that call:
<businessObject>Erp.Proxy.BO.LaborImpl</businessObject>
<methodName>GetNewLaborDtlOnSelectForWork</methodName>
<appServerUri>net.tcp://jpe10prod/E10LiveDB2/</appServerUri>
<returnType>System.Void</returnType>
<localTime>12/28/2016 08:39:21:4348315 AM</localTime>
<executionTime>93</executionTime>
<parameters>
<parameter name="ds" type="LaborDataSet">
<LaborDataSet xmlns="http://www.epicor.com/Ice/300/BO/Labor/Labor">
<LaborHed>
<Company>CP</Company>
<EmployeeNum>cconn</EmployeeNum>
<LaborHedSeq>3645</LaborHedSeq>
<PayrollDate>2016-10-19T00:00:00-05:00</PayrollDate>
<Shift>1</Shift>
<ClockInDate>2016-10-19T00:00:00-05:00</ClockInDate>
<ClockInTime>0.28</ClockInTime>
<DspClockInTime>00:17</DspClockInTime>
<ActualClockInTime>0.28</ActualClockInTime>
<ActualClockinDate>2016-10-19T00:00:00-05:00</ActualClockinDate>
<LunchStatus>N</LunchStatus>
<ActLunchOutTime>0.00</ActLunchOutTime>
<LunchOutTime>0.00</LunchOutTime>
<ActLunchInTime>0.00</ActLunchInTime>
<LunchInTime>0.00</LunchInTime>
<ClockOutTime>0</ClockOutTime>
<DspClockOutTime>24:00</DspClockOutTime>
<ActualClockOutTime>0</ActualClockOutTime>
<PayHours>0.00</PayHours>
<FeedPayroll>false</FeedPayroll>
<TransferredToPayroll>false</TransferredToPayroll>
<LaborCollection>true</LaborCollection>
<TranSet></TranSet>
<ActiveTrans>true</ActiveTrans>
<ChkLink></ChkLink>
<BatchTotalHrsDisp></BatchTotalHrsDisp>
<BatchHrsRemainDisp></BatchHrsRemainDisp>
<BatchHrsRemainPctDisp></BatchHrsRemainPctDisp>
<BatchSplitHrsMethod></BatchSplitHrsMethod>
<BatchAssignTo>false</BatchAssignTo>
<BatchComplete>false</BatchComplete>
<BatchTotalHrs>0.00000</BatchTotalHrs>
<BatchHrsRemain>0.00000</BatchHrsRemain>
<BatchHrsRemainPct>0.00000</BatchHrsRemainPct>
<SysRevID>585442701</SysRevID>
<SysRowID>280f8dff-1cb2-4ff1-98b6-5267b66e259e</SysRowID>
<Imported>false</Imported>
<BatchMode>false</BatchMode>
<DspPayHours>0.00</DspPayHours>
<EmpBasicShift>1</EmpBasicShift>
<EmpBasicSupervisorID></EmpBasicSupervisorID>
<GetNewNoHdr>false</GetNewNoHdr>
<ImagePath>empphoto/CP/.bmp</ImagePath>
<LunchBreak>false</LunchBreak>
<MES>false</MES>
<TimeDisableDelete>false</TimeDisableDelete>
<TimeDisableUpdate>false</TimeDisableUpdate>
<TotBurHrs>40.29</TotBurHrs>
<TotLbrHrs>49.21</TotLbrHrs>
<WipPosted>false</WipPosted>
<BitFlag>0</BitFlag>
<EmployeeNumFirstName>Chris</EmployeeNumFirstName>
<EmployeeNumName>Chris P Conn</EmployeeNumName>
<EmployeeNumLastName>Conn</EmployeeNumLastName>
<ShiftDescription>7:00 AM to 3:00 PM</ShiftDescription>
<RowMod>U</RowMod>
</LaborHed>
</LaborDataSet>
</parameter>
<parameter name="laborHedSeq" type="System.Int32"><![CDATA[3645]]></parameter>
<parameter name="sJobNum" type="System.String"><![CDATA[F000007827]]></parameter>
<parameter name="iAssemblySeq" type="System.Int32"><![CDATA[0]]></parameter>
<parameter name="iOprSeq" type="System.Int32"><![CDATA[10]]></parameter>
<parameter name="sResourceGrpID" type="System.String"><![CDATA[PRGP0300]]></parameter>
<parameter name="setupOrProd" type="System.String"><![CDATA[B]]></parameter>
<parameter name="bMachinePrompt" type="System.Boolean"><![CDATA[False]]></parameter>
<parameter name="CallContext" type="Ice.Bpm.Context.ContextDataSet">
<ContextDataSet xmlns="http://www.epicor.com/Ice/300/Bpm/Context">
<BpmData>
<SysRowID>00000000-0000-0000-0000-000000000000</SysRowID>
</BpmData>
</ContextDataSet>
</parameter>
</parameters>
<paramDataSetChanges>
<paramDataSet name="ds" useDataSetNbr="0">
<changedValue tableName="LaborHed" rowState="Modified" rowNum="0" colName="RowMod"><![CDATA[U]]></changedValue>
</paramDataSet>
</paramDataSetChanges>
josecgomez
(Jose C Gomez)
December 28, 2016, 4:21pm
14
Right but if you see the paramDataSetChanges that means changes to the dataset that occurred before calling the method, so set LaborHed.RowMod=âUâ
Chris_Conn
(Chris Conn)
December 28, 2016, 4:23pm
15
Make those changes in the Labor dataset or in the DB?
josecgomez
(Jose C Gomez)
December 28, 2016, 4:23pm
16
In the LaborDataset set the LaborHed.RowMod=âUâ (RowMod doesnât exist in the data set)
Chris_Conn
(Chris Conn)
December 28, 2016, 4:25pm
17
I am going with:
var lbr = adapterLabor.GetRows(opts, out more);
lbr.Tables[0].Rows[0][âRowModâ] = âUâ;
No apparent change. Let me check the trace.
josecgomez
(Jose C Gomez)
December 28, 2016, 4:27pm
18
Sure! However you can use the typed dataset to make your life easier, using quoted strings is error prone
LaborDataSet lds = adapterLabor.GetRows(opts, out more);
lds.LaborHed[0].RowMod="U";
Also I think your adapterLabor is named wrong⌠is that an adapter? Adapters (generally) donât return values. How are you instantiating that? (Edit never mind, but you can still cast it to LaborDataSet)
Chris_Conn
(Chris Conn)
December 28, 2016, 4:29pm
19
private LaborAdapter adapterLabor;
adapterLabor = new LaborAdapter(this.oTrans);
adapterLabor.BOConnect();
...
SearchOptions opts = new SearchOptions(SearchMode.AutoSearch);
bool more;
opts.PageSize = 20; //return this many
string whereSeq = string.Format("ActiveTrans = TRUE and EmployeeNum = '{0}' and COMPANY = '{1}'",((Ice.Core.Session)oTrans.Session).EmployeeID.ToString(),((Ice.Core.Session)oTrans.Session).CompanyID.ToString());
opts.NamedSearch.WhereClauses.Add("LaborHed",whereSeq);
adapterLabor.LaborData.Clear();
var lbr = adapterLabor.GetRows(opts, out more);
josecgomez
(Jose C Gomez)
December 28, 2016, 4:31pm
20
Yeah never mind I saw it after I posted, you can cast that var lbr into a LaborDataSet to make your life easier (I think)
Can you post your entire code I think I know what your issue is.