1

有人可以告诉我为什么我的代码会在 CU 5402 UOM Mgmt 上出错,特别是在 GetQtyPerUnitofMeasure 函数下的 Item.Testfield("No.) 行?下面是我导入 6 列数据的代码:locationcode、item、variantcode、数量,计量单位,业务实体。

我已经设置了一个名为 Item 的 Item Journal 模板,批次名称 = AU007。我不明白为什么它会出错。请帮忙。

我在这里包含了我的 csv 文件中的数据...

AU007 A045 001-00 1 EA AU AU007 A045 1882-00 1 EA AU AU007 A045 1887-00 -1 EA AU AU007 A045 511-00 1 EA AU

错误是您必须在 ItemNo 中指定 No.?

>Integer - OnBeforeImportRecord()
>LocationCode := '';
>ItemNo := '';
>VariantCode := '';
>Qty := '';
>UOM := '';
>BusinessEntity := '';
Integer - OnAfterImportRecord()
LineNo += 10000;

WITH ItemJnlLine DO BEGIN
INIT;
"Journal Template Name" := 'ITEM';
"Journal Batch Name" := 'AU007';
"Line No." := LineNo;
"Reason Code" := 'COUNT';
INSERT(TRUE);

"Posting Date" := 020117D;
VALIDATE("Entry Type",ItemJnlLine."Entry Type"::"Positive Adjmt.");
"Document No." := 'AU_invcount';
IF EVALUATE("Location Code",LocationCode) THEN
VALIDATE("Location Code");
IF EVALUATE("Item No.",ItemNo) THEN
VALIDATE("Item No.");
IF EVALUATE("Variant Code",VariantCode) THEN
VALIDATE("Variant Code");
IF EVALUATE(Quantity,Qty) THEN
VALIDATE(Quantity);
IF EVALUATE("Unit of Measure Code",UOM) THEN
VALIDATE("Unit of Measure Code");
IF EVALUATE("Shortcut Dimension 2 Code",BusinessEntity) THEN
VALIDATE("Shortcut Dimension 2 Code");
MODIFY(TRUE);
END;
4

1 回答 1

0

我估计错误出在某些验证函数中,在这些行中您检查是否可以 EVALUETE “项目编号”。字段然后您将值赋值为“项目编号”。它没有价值。

IF EVALUATE("Item No.",ItemNo) THEN
    VALIDATE("Item No.");

因此,在其他验证“项目编号”。字段是“”。

尝试这个:

IF EVALUATE("Item No.",ItemNo) THEN BEGIN
    LineNo += 10000;

    WITH ItemJnlLine DO BEGIN
        INIT;
        "Journal Template Name" := 'ITEM';
        "Journal Batch Name" := 'AU007';
        "Line No." := LineNo;
        "Reason Code" := 'COUNT';
        INSERT(TRUE);

        "Posting Date" := 020117D;
        VALIDATE("Entry Type",ItemJnlLine."Entry Type"::"Positive Adjmt.");
        "Document No." := 'AU_invcount';
        IF EVALUATE("Location Code",LocationCode) THEN
            VALIDATE("Location Code");
        IF EVALUATE("Item No.",ItemNo) THEN
            VALIDATE("Item No.");
        IF EVALUATE("Variant Code",VariantCode) THEN
            VALIDATE("Variant Code");
        IF EVALUATE(Quantity,Qty) THEN
            VALIDATE(Quantity);
        IF EVALUATE("Unit of Measure Code",UOM) THEN
            VALIDATE("Unit of Measure Code");
        IF EVALUATE("Shortcut Dimension 2 Code",BusinessEntity) THEN
            VALIDATE("Shortcut Dimension 2 Code");
        MODIFY(TRUE);
    END;
END;
于 2017-02-15T00:07:29.053 回答