Det här avsnittet innehåller kodexempel för att visa ändrade mönster i dimensionskodändring och flytt för fem olika scenarier. Den jämför kodexemplen i tidigare versioner med kodexemplen i Microsoft Dynamics NAV 2016.

Bokför en journalrad

Viktiga ändringar är följande:

  • Dimensionstabeller för journalrader tas bort.
  • Ett dimensionsuppsättning-ID skapas i fältet Dimensionsuppsättnings-ID.

Tidigare versioner Microsoft Dynamics NAV 2016
 Kopiera kod
ResJnlLine."Qty. per Unit of Measure" := 
  SalesLine."Qty. per Unit of Measure";
TempJnlLineDim.DELETEALL;
TempDocDim.RESET;
TempDocDim.SETRANGE(
  "Table ID",DATABASE::"Sales Line");
TempDocDim.SETRANGE(
  "Line No.",SalesLine."Line No.");
DimMgt.CopyDocDimToJnlLineDim(
  TempDocDim,TempJnlLineDim);
ResJnlPostLine.RunWithCheck(
  ResJnlLine,TempJnlLineDim);
 Kopiera kod
ResJnlLine."Qty. per Unit of Measure" := 
  SalesLine."Qty. per Unit of Measure";
ResJnlLine."Dimension Set ID" := 
  SalesLine." Dimension Set ID ";
ResJnlPostLine.Run(ResJnlLine);

Bokför ett dokument

När du bokför ett dokument i Microsoft Dynamics NAV 2016 måste du inte längre kopiera dokumentdimensionerna.

Tidigare versioner Microsoft Dynamics NAV 2016
 Kopiera kod
DimMgt.MoveOneDocDimToPostedDocDim(
  TempDocDim,DATABASE::"Sales Line",
  "Document Type",
  "No.",
  SalesShptLine."Line No.",
  DATABASE::"Sales Shipment Line",
  SalesShptHeader."No.");
 Kopiera kod
SalesShptLine."Dimension Set ID”
  := SalesLine."Dimension Set ID”

Redigera dimensioner från ett dokument

Du kan redigera dimensioner från ett dokument. Du kan till exempel redigera en försäljningsorderrad.

Tidigare versioner Microsoft Dynamics NAV 2016
 Kopiera kod
Table 37, function ShowDimensions:
TESTFIELD("Document No.");
TESTFIELD("Line No.");
DocDim.SETRANGE("Table ID",DATABASE::"Sales Line");
DocDim.SETRANGE("Document Type","Document Type");
DocDim.SETRANGE("Document No.","Document No.");
DocDim.SETRANGE("Line No.","Line No.");
DocDimensions.SETTABLEVIEW(DocDim);
DocDimensions.RUNMODAL;
 Kopiera kod
Table 37, function ShowDimensions:
"Dimension ID" := 
  DimSetEntry.EditDimensionSet(
    "Dimension ID");

Visar dimensioner från bokförda transaktioner

Du kan visa dimensioner från bokförda transaktioner, till exempel utleveransrader.

Tidigare versioner Microsoft Dynamics NAV 2016
 Kopiera kod
Table 111, function ShowDimensions:
TESTFIELD("No.");
TESTFIELD("Line No.");
PostedDocDim.SETRANGE(
  "Table ID",DATABASE::"Sales Shipment Line");
PostedDocDim.SETRANGE(
  "Document No.","Document No.");
PostedDocDim.SETRANGE("Line No.","Line No.");
PostedDocDimensions.SETTABLEVIEW(PostedDocDim);
PostedDocDimensions.RUNMODAL;
 Kopiera kod
Table 111, function ShowDimensions:
DimSetEntry.ShowDimensionSet(
  "Dimension ID");

Få standarddimensioner för ett dokument

Du kan få standarddimensioner för ett dokument, till exempel en försäljningsorderrad.

Tidigare versioner Microsoft Dynamics NAV 2016
 Kopiera kod
Table 37, function CreateDim()
SourceCodeSetup.GET;
TableID[1] := Type1;
No[1] := No1;
TableID[2] := Type2;
No[2] := No2;
TableID[3] := Type3;
No[3] := No3;
"Shortcut Dimension 1 Code" := '';
"Shortcut Dimension 2 Code" := '';
DimMgt.GetPreviousDocDefaultDim(
  DATABASE::"Sales Header","Document Type",
  "Document No.",0,
  DATABASE::Customer,
  "Shortcut Dimension 1 Code",
  "Shortcut Dimension 2 Code");
DimMgt.GetDefaultDim(
  TableID,No,SourceCodeSetup.Sales,
  "Shortcut Dimension 1 Code",
  "Shortcut Dimension 2 Code");
IF "Line No." <> 0 THEN
  DimMgt.UpdateDocDefaultDim(
    DATABASE::"Sales Line","Document Type",
    "Document No.","Line No.",
    "Shortcut Dimension 1 Code",
    "Shortcut Dimension 2 Code");
 Kopiera kod
Table 37, function CreateDim()
SourceCodeSetup.GET;
TableID[1] := Type1;
No[1] := No1;
TableID[2] := Type2;
No[2] := No2;
TableID[3] := Type3;
No[3] := No3;
"Shortcut Dimension 1 Code" := '';
"Shortcut Dimension 2 Code" := '';
GetSalesHeader;
"Dimension ID" :=
  DimMgt.GetDefaultDimID(
    TableID,No,SourceCodeSetup.Sales,
    "Shortcut Dimension 1 Code",
    "Shortcut Dimension 2 Code",
    SalesHeader."Dimension ID",
    DATABASE::"Sales Header");

Se även