Ich habe ein Verfahren geschaffen, in dem ich Daten in eine CSV-Datei zu exportieren, habe ich den folgenden Code erstellt:Doppel Datensätze, wenn Daten in CSV-Export
public void export()
{
permission = new FileIOPermission(fileNameValue, #io_WRITE);
permission.assert();
inFile = new CommaTextIo(fileNameValue, #io_WRITE);
inFile.inFieldDelimiter(";");
inFile.inRecordDelimiter("\n");
while (inFile.status() == IO_Status::Ok)
while select inventTrans
where inventTrans.StatusIssue == StatusIssue::ReservPhysical
join inventDim
where inventDim.InventLocationId == inventLocationId
join inventTransOrg
where inventTransOrg.RecId == inventTrans.InventTransOrg
{
con = conNull();
con = conIns(con, 1, inventTransOrg.inventTransId);
con = conIns(con, 2, inventLocationId);
con = conIns(con, 3, inventTrans.Qty);
inFile.writeExp(con);
}
}
Dies schafft eine CSV mit 3 Spalten-Datei, aber eine Menge von doppelte Datensätze (fast 100) die tatsächlichen Daten enthalten nicht 100 Doppel-Datensätze. Irgendwelche Vorschläge, wie ich den Export wiederherstellen kann, um die doppelten Datensätze zu vermeiden?
Was möchten Sie exportieren? Die while-Auswahl sieht so aus, als ob Sie an physischen Reservierungen eines bestimmten Lagerorts interessiert sind, ist das korrekt? Können Sie uns auch die Version von Dynamics AX nennen? Und fügen Sie bitte die Variablendefinition ein, um es zu einem [mcve] zu machen. Die erste While-Schleife sieht ebenfalls verdächtig aus, würde das nicht zu einer Endlosschleife führen? Einige zusätzliche Einrückungen würden den Code auch leichter lesbar machen. –