Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- static void DMF_ProductdimensionsfromCSV(Args _args)
- {
- TextIo txIoRead;
- FileIOPermission permission;
- container fileline;
- container containFromRead;
- Filename filename;
- int64 recs = 0;
- int recordCounter = 0;
- #AviFiles
- SysOperationProgress progress = new SysOperationProgress();
- int i;
- str CustAccount, LineNum, SalesId;
- int64 DefaultRecid;
- SalesTable salesTable;
- SalesLine salesLine;
- CustTable custTable;
- str 50 employee, orderno, costCenter, project;
- DefaultDimensionView defaultDimensionView;
- InventTable inventTable;
- str C10Site, C10BusinessUnit;
- InventDim inventDim;
- NoYes MissingonItem;
- int charCounter = 1;
- int delimiterCounter = 0;
- str curChar;
- str strPart1;
- DimensionAttributeValueSetStorage valueSetStorage = new DimensionAttributeValueSetStorage();
- DimensionDefault result;
- DimensionAttribute dimensionAttribute;
- DimensionAttributeValue dimensionAttributeValue;
- Dialog dialog;
- DialogGroup dialogg;
- DialogField dialogf;
- DialogGroup dialogg1;
- container conAttr = ["Anställningsnummer", "Beställningsnummer", "Kostandsställe", "Project"];
- container conValue = [employee, orderNo, costCenter, project];
- str dimValue;
- ItemId itemid;
- recid returVal;
- int validated;
- str tmpStr;
- ProjTable projTable;
- str defaultdimension;
- OMOperatingUnit OMOperatingUnit;
- ;
- dialog = new dialog("Indtast værdier");
- dialogg = dialog.addGroup("Fil:");
- dialogf= dialog.addField(extendedtypestr(FilenameOpen));
- //dialogg1 = dialog.add()
- if (dialog.run())
- {
- filename = dialogf.value();
- }
- permission = new FileIOPermission(filename, "R");
- txIoRead = new TextIo(filename, "R");
- //tells the delimiter
- txIoRead.inFieldDelimiter(";");
- txIoRead.inRecordDelimiter('\n');
- info("Start");
- select count(RecId) from salesLine;
- recs = salesLine.RecId;
- progress.setTotal(recs);
- while (txIoRead.status() == IO_Status::Ok)
- {
- containFromRead = txIoRead.read();
- defaultdimension = conpeek(containFromRead, 1);
- employee = "";
- orderNo = "";
- costCenter = "";
- project = "";
- charCounter = 1;
- while (charCounter <= strLen(DefaultDimension) && delimiterCounter <= 3)
- {
- curChar = subStr(DefaultDimension, charCounter, 1);
- if (curChar == "-")
- {
- delimiterCounter++;
- }
- //if (curChar!=";" && delimiterCounter==2) CustAccount = CustAccount + curChar;
- if (curChar != "-" && delimiterCounter == 0)
- {
- LineNum = LineNum + curChar;
- if (strPart1 == "")
- {
- strPart1 = subStr(DefaultDimension, 1, charCounter - 1);
- }
- if (curChar != "-")
- {
- employee = employee + curChar;
- }
- }
- if (curChar != "-" && delimiterCounter == 1)
- {
- LineNum = LineNum + curChar;
- if (strPart1 == "")
- {
- strPart1 = subStr(DefaultDimension, 1, charCounter - 1);
- }
- if (curChar != "-")
- {
- orderNo = orderNo + curChar;
- }
- }
- if (curChar != "-" && delimiterCounter == 2)
- {
- LineNum = LineNum + curChar;
- if (strPart1 == "")
- {
- strPart1 = subStr(DefaultDimension, 1, charCounter - 1);
- }
- if (curChar != "-")
- {
- costCenter = costCenter + curChar;
- }
- }
- if (curChar != "-" && delimiterCounter == 3)
- {
- LineNum = LineNum + curChar;
- if (strPart1 == "")
- {
- strPart1 = subStr(DefaultDimension, 1, charCounter - 1);
- }
- if (curChar != "-")
- {
- project = project + curChar;
- }
- }
- charCounter++;
- }
- validated = true;
- i = 1;
- convalue =[employee, orderNo, costCenter, project];
- //Find dimension
- if (validated==true)
- {
- for (i = 1; i <= conLen(conAttr); i++)
- {
- dimensionAttribute = dimensionAttribute::findByName(conPeek(conAttr,i));
- if (dimensionAttribute.RecId == 0)
- {
- continue;
- }
- dimValue = conPeek(conValue,i);
- if (dimValue != "")
- {
- dimensionAttributeValue =
- dimensionAttributeValue::findByDimensionAttributeAndValue(dimensionAttribute,dimValue,true,true);
- valueSetStorage.addItem(dimensionAttributeValue);
- returVal = dimensionAttributeValue.RecId;
- }
- }
- DefaultRecid = valueSetStorage.save();
- }
- if (DefaultRecid!=0)
- {
- select forUpdate inventtable where inventtable.itemid==itemid;
- if (inventTable)
- {
- ttsBegin;
- inventtable.DefaultDimension = DefaultRecid;
- inventtable.doupdate();
- ttsCommit;
- }
- }
- }
- info("Slut, prut finale");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement