...
TempDimBuf.RESET;
TempDimBuf.DELETEALL;
DimBufMgt.GetDimensions(TempPaymentBuffer."Dimension Entry No.",TempDimBuf);
IF TempDimBuf.FINDSET THEN
REPEAT
DimMgt.SaveJnlLineDim(
DATABASE::"Gen. Journal Line","Journal Template Name","Journal Batch Name","Line No.",0,
...
...
TempDimBuf.RESET;
TempDimBuf.DELETEALL;
DimBufMgt.GetDimensions(TempPaymentBuffer."Dimension Entry No.",TempDimBuf);
IF TempDimBuf.FINDSET THEN BEGIN
CreateDim(
DimMgt.TypeToTableID1("Account Type"),"Account No.",
DimMgt.TypeToTableID1("Bal. Account Type"),"Bal. Account No.",
DATABASE::Job,"Job No.",
DATABASE::"Salesperson/Purchaser","Salespers./Purch. Code",
DATABASE::Campaign,"Campaign No.");
REPEAT
DimMgt.SaveJnlLineDim(
DATABASE::"Gen. Journal Line","Journal Template Name","Journal Batch Name","Line No.",0,
...
...
DATABASE::"Gen. Journal Line","Journal Template Name","Journal Batch Name","Line No.",0,
DimMgt.GlobalDimNo(TempDimBuf."Dimension Code"),TempDimBuf."Dimension Value Code");
UNTIL TempDimBuf.NEXT = 0;
END ELSE BEGIN
LedgEntryDim.SETRANGE("Table ID",DATABASE::"Vendor Ledger Entry");
LedgEntryDim.SETRANGE("Entry No.",TempPaymentBuffer."Vendor Ledg. Entry No.");
...
...
DATABASE::"Gen. Journal Line","Journal Template Name","Journal Batch Name","Line No.",0,
DimMgt.GlobalDimNo(TempDimBuf."Dimension Code"),TempDimBuf."Dimension Value Code");
UNTIL TempDimBuf.NEXT = 0;
TempDimBuf.FINDFIRST;
DeleteDimNotInTempDimBuf(
DATABASE::"Gen. Journal Line","Journal Template Name","Journal Batch Name","Line No.",0,TempDimBuf);
END;
END ELSE BEGIN
LedgEntryDim.SETRANGE("Table ID",DATABASE::"Vendor Ledger Entry");
LedgEntryDim.SETRANGE("Entry No.",TempPaymentBuffer."Vendor Ledg. Entry No.");
...
...
REPEAT
JnlLineDim.SETRANGE("Allocation Line No.",0);
JnlLineDim.SETRANGE("Dimension Code",LedgEntryDim."Dimension Code");
IF NOT JnlLineDim.ISEMPTY THEN
JnlLineDim.DELETEALL;
UNTIL LedgEntryDim.NEXT = 0;
DimMgt.MoveLedgEntryDimToJnlLineDim(
...
...
REPEAT
JnlLineDim.SETRANGE("Allocation Line No.",0);
JnlLineDim.SETRANGE("Dimension Code",LedgEntryDim."Dimension Code");
IF JnlLineDim.FINDFIRST THEN
JnlLineDim.DELETE(TRUE);
UNTIL LedgEntryDim.NEXT = 0;
DimMgt.MoveLedgEntryDimToJnlLineDim(
...