I am trying to read the next number from the UserCode table, add 1 and then write it back for auto numbering. It is all working except it doesn’t write back. What else is needed to updated the usercode record?
private string getNextPartNum()
{
string nextPartNum = String.Empty;
bool morePages = false;
UserCodesAdapter adpUserCodes = new UserCodesAdapter(oTrans);
adpUserCodes.BOConnect();
SearchOptions opts = new SearchOptions(SearchMode.AutoSearch);
string whereClauseCodeTypeID = "CodeTypeID = 'AutoNumber'";
string whereClauseCodeID = "CodeID = 'PartNum'";
opts.NamedSearch.WhereClauses.Add("UDCodeType", whereClauseCodeTypeID);
opts.NamedSearch.WhereClauses.Add("UDCodes", whereClauseCodeID);
DataSet dsUserCodes = adpUserCodes.GetRows(opts, out morePages);
if(dsUserCodes.Tables[0].Rows.Count > 0)
{
int nextPartNumber = Convert.ToInt32(dsUserCodes.Tables[1].Rows[0]["CodeDesc"].ToString()) + 1;
dsUserCodes.Tables[1].Rows[0]["CodeDesc"] = nextPartNumber.ToString();
//adpUserCodes.Update();
EpiDataView edvDupPart = (EpiDataView)(oTrans.EpiDataViews["NoBoundField"]);
edvDupPart.dataView[edvDupPart.Row]["DupPart"] = nextPartNumber;
}
adpUserCodes.Dispose();
return nextPartNum;
}
Thanks!
Ross