31. Juli 2013 13:48
TempDimSetEntry.INIT;
TempDimSetEntry.VALIDATE("Dimension Code", Dimensioncode);
TempDimSetEntry.VALIDATE("Dimension Value Code", Dimension_Value_Code);
TempDimSetEntry.INSERT;
IF TempDimSetEntry.FINDSET THEN BEGIN
DimensionSetID := DimensionMgt.GetDimensionSetID(TempDimSetEntry);
REPEAT
IF NOT DimSetEntry.GET(DimensionSetID) THEN BEGIN
DimSetEntry.INIT;
DimSetEntry."Dimension Set ID" := DimensionSetID;
DimSetEntry."Dimension Code" := TempDimSetEntry."Dimension Code";
DimSetEntry."Dimension Value Code" := TempDimSetEntry."Dimension Value Code";
DimSetEntry.INSERT;
END;
UNTIL TempDimSetEntry.NEXT = 0;
GenJnlLine."Dimension Set ID" := DimensionSetID;
END;
GenJnlLine.INSERT(TRUE);
31. Juli 2013 13:58
IF TempDimBuf2.FINDSET THEN BEGIN
REPEAT
DimVal.GET(TempDimBuf2."Dimension Code",TempDimBuf2."Dimension Value Code");
TempDimSetEntry."Dimension Code" := TempDimBuf2."Dimension Code";
TempDimSetEntry."Dimension Value Code" := TempDimBuf2."Dimension Value Code";
TempDimSetEntry."Dimension Value ID" := DimVal."Dimension Value ID";
TempDimSetEntry.INSERT;
UNTIL TempDimBuf2.NEXT = 0;
NewDimSetID := GetDimensionSetID(TempDimSetEntry);
END;
31. Juli 2013 15:03
31. Juli 2013 15:15
31. Juli 2013 15:18
Sipa hat geschrieben:1. Mit dem Dimensionsbuffer habe ich bisher noch nicht gearbeitet. Ist dieser von Nöten, wenn ich die nötigen Dimensionswerte habe und die Dimensionen im 2013er System angelegt sind?
2. GetDimensionSetID(TempDimSetEntry) wirft anscheinend nicht die richtige Set ID aus obwohl dieses Set bereits besteht
DeinTempRec.RESET;
DeinTempRec.DELETEALL;
31. Juli 2013 15:40
Natalie hat geschrieben:GetDimensionSetID kann nur dann die "richtige" ID zurückliefern, wenn deine vorherigen Dimension Sets bereits in der Datenbank gespeichert sind. Ist das bei dir auch wirklich der Fall?
Natalie hat geschrieben:Übrigens, um einen temporären Record komplett zu leeren, musst du verwenden:
- Code:
DeinTempRec.RESET;
DeinTempRec.DELETEALL;
Nur INIT oder CLEAR leert nur die Felder des Datensatzes, auf den gerade gezeigt wird. Die anderen bleiben so, wie sie waren ... Kann gut der Fehlergrund bei dir sein.
31. Juli 2013 15:46
31. Juli 2013 15:56
31. Juli 2013 15:57
Sipa hat geschrieben:Da liegt gaube ich mein Verständnis Problem: Kann ich ein DimensonSet "einfügen" ohne eine SetID?
31. Juli 2013 16:04
Die Dimension Value Entries können nur in Dimension Sets existieren korrekt?
31. Juli 2013 16:14
Also sollte das so funktionieren:
Einträge in TempDimSetEntry erzeugen
DimSetID := DimMgt.GetDimensionSetID(TempDimSetEntry);
Fertig!
Du kannst die DimSetID nun nutzen, um diese in deiner Buch.-Blattzeile zu speichern.
31. Juli 2013 16:30
TempDimSetEntry.INIT;
TempDimSetEntry."Dimension Code" := Dimensioncode;
TempDimSetEntry."Dimension Value Code" := Dimension_Value_Code;
DimVal.GET(Dimensioncode,Dimension_Value_Code);
TempDimSetEntry."Dimension Value ID" := DimVal."Dimension Value ID";
TempDimSetEntry.INSERT;
IF TempDimSetEntry.FINDSET THEN
DimensionSetID := DimensionMgt.GetDimensionSetID(TempDimSetEntry);
GenJnlLine."Dimension Set ID" := DimensionSetID;
31. Juli 2013 16:35
Sipa hat geschrieben:
- Code:
IF TempDimSetEntry.FINDSET THEN
DimensionSetID := DimensionMgt.GetDimensionSetID(TempDimSetEntry);
GenJnlLine."Dimension Set ID" := DimensionSetID;
IF TempDimSetEntry.FINDSET THEN BEGIN
DimensionSetID := DimensionMgt.GetDimensionSetID(TempDimSetEntry);
GenJnlLine."Dimension Set ID" := DimensionSetID;
END;
31. Juli 2013 16:39