1

我正在尝试通过代码添加跟踪规范条目;

rec_trackingspec.init();

                                                      if rec_trackingspec2.FindLast() then
                                                          rec_trackingspec."Entry No." := rec_trackingspec2."Entry No." + 1 else
                                                          rec_trackingspec."Entry No." := 1;
                                                     

                                                      rec_trackingspec."Creation Date" := WorkDate();
                                                      rec_trackingspec.Positive := true;
                                                      rec_trackingspec.Validate("Item No.", rec_SalesLine."No.");
                                                      rec_trackingspec.Validate("Lot No.", rec_itemledgerentry."Lot No.");
                                                      rec_trackingspec."Location Code" := 'MAIN';
                                                
                                                      rec_trackingspec.Validate("Quantity (Base)", rec_SalesLine.Quantity);
                                                      rec_trackingspec.Validate("Bin Code", rec_SalesLine."Bin Code");
                                                      rec_trackingspec."Source Ref. No." := rec_SalesLine."Line No.";
                                                
                                                      rec_trackingspec.Insert(true);

通过调试器检查,我看到 Insert(true) 被执行,但是当我去检查 Tracking Spec 是否有我打算插入的行时,它没有在那里显示条目。

4

2 回答 2

2

对于这类问题,我通常倾向于使用 SQL Server。

  • 使用调试器,调试插入
  • 在 SQL Server 上运行,您应该会看到插入的记录。

SELECT * FROM [Table Name] with (nolock) WHERE [KeyFields]

  • 然后在调试器中按 F5 它应该停止发生错误并删除记录,如果没有发生类似的情况,请使用 F11 遍历一些代码行并检查数据库中的记录是否仍然存在,直到找到删除了哪一行记录。

但可能在这许多天里你已经想通了。

于 2020-09-22T15:54:43.133 回答
2

检查 INSERT 之后是否有代码可以反转所有更改,如 ERROR 命令。

于 2020-09-19T16:28:52.430 回答