Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在采购订单行上标记发票数量?我可以使用';已完成';领域_C#_Web Services_Navision_Dynamics Nav - Fatal编程技术网

C# 如何在采购订单行上标记发票数量?我可以使用';已完成';领域

C# 如何在采购订单行上标记发票数量?我可以使用';已完成';领域,c#,web-services,navision,dynamics-nav,C#,Web Services,Navision,Dynamics Nav,我正试图在采购订单行中计算发票的数量,但该字段的值在开始时为0,因此我必须使用采购订单行的数量字段对其进行初始化。问题是当它返回到0时。如何标记该行的所有发票均已收到 我在采购订单行中找到了“完成”字段,但我不确定是否可以使用它。我可以吗?我可以吗?我不知道系统以后会用它做什么 如果有API文档,请给我指一下。有关于所有这些字段的描述的东西读起来会很好 //ETDI:我使用Web服务(页面)访问NAV 但是这个字段的值在一开始是0,所以我必须初始化它 我猜不出你到底想用采购行做什么,但是像数量这

我正试图在
采购订单行
中计算发票的
数量
,但该字段的值在开始时为0,因此我必须使用采购订单行的
数量
字段对其进行初始化。问题是当它返回到0时。如何标记该行的所有发票均已收到

我在采购订单行中找到了“完成”字段,但我不确定是否可以使用它。我可以吗?我可以吗?我不知道系统以后会用它做什么

如果有API文档,请给我指一下。有关于所有这些字段的描述的东西读起来会很好

//ETDI:我使用Web服务(页面)访问NAV

但是这个字段的值在一开始是0,所以我必须初始化它

我猜不出你到底想用采购行做什么,但是像数量这样的字段。发票和数量。在大多数情况下,在验证数量时自动填写。两组数量相等。当用户通过调用
PurcaseLine.Validate(“Quantity”,number)在表单上或从C/AL代码中输入内容时,Validate触发

问题是当它返回到0时。如何标记该行的所有发票均已收到

过帐发票时,过帐数量将添加到字段
数量。发票
和已收数量添加到字段
数量。已收到。所以,在任何时候,你都知道有多少项目收到和支付。这两个字段对于用户都是只读的,因为只有过帐过程可以而且必须更改这些字段

所以如果你有数量10,然后发布其中4个(发票数量=4)和数量。发票金额=0。 您将获得数量=10,数量。发票金额=6,数量。发票金额=4。 数量。在这种情况下,发票是剩余的数量。开发票

如果不知道字段的用途,则不应使用任何字段。例如,“完成”字段是生产订单功能的一部分,与数量无关。根本不开发票

要了解某个字段的含义,可以参考帮助(站在表中的某个字段上按F1)。这并不适用于所有领域。另一种方法(如果您是开发人员并且拥有许可证)是使用开发人员工具包(可以在安装CD或中找到)。此实用程序允许搜索导航对象之间的依赖关系


关于web服务。 不要试图直接使用这些表格。它确实造成了很多麻烦和不便。创建新的操作表。将它们命名为
采购订单导入
采购行导入
。为它们创建页面并作为web服务发布。以您喜欢的格式将数据导入到它们中。我的意思是,这些表可以是真实表的克隆,也可以只有很少的字段。 将一些代码放入页面的
OnModify
触发器中,这些页面将在导入或发布代码单元结束时调用,该代码单元具有创建或更新导入表中的采购订单和行的功能。 毕竟要清除导入表

如果您的任务是根据外部系统的数量部分过账收据,则您的步骤如下:

  • 假设已创建采购订单和行,数量为100,则需要将此数量分部分过帐
  • 通过网页将要通过web服务过帐到采购行导入表的导入数量
  • 一旦页面的修改将被触发,将一些代码放入该触发器以更新采购行的
    数量。要开具发票,
    -或-请通过web服务调用某些代码单位,并更新采购行的
    数量。开具发票
    。将所有业务逻辑放在此处创建和更新采购行上,而不是放在外部应用程序中
  • 现在,数量=100,发票数量=5
  • 通过web服务调用发布代码单元。当然,不要发布发布代码单元本身。通过发布的另一个代码单元调用它
  • 现在,您的数量=100,发票数量=不在乎,发票数量=5,您可以再次重复步骤2-5
  • 您不应该关心要开具发票的数量,这就是为什么:下次导入数量的下一部分时,您只需要检查导入数量<(数量-发票数量)。如果是真的,你可以发布,否则你不能

    但是这个字段的值在一开始是0,所以我必须初始化它

    我猜不出你到底想用采购行做什么,但是像数量这样的字段。发票和数量。在大多数情况下,在验证数量时自动填写。两组数量相等。当用户通过调用
    PurcaseLine.Validate(“Quantity”,number)在表单上或从C/AL代码中输入内容时,Validate触发

    问题是当它返回到0时。如何标记该行的所有发票均已收到

    过帐发票时,过帐数量将添加到字段
    数量。发票
    和已收数量添加到字段
    数量。已收到。所以,在任何时候,你都知道有多少项目收到和支付。这两个字段对于用户都是只读的,因为只有过帐过程可以而且必须更改这些字段

    所以如果你有数量10,然后发布其中4个(发票数量=4)和数量。发票金额=0。 您将获得数量=10,数量。发票金额=6,数量。发票金额=4。 数量。在这种情况下,发票是剩余的数量。开发票

    如果不知道字段的用途,则不应使用任何字段。例如,“完成”字段是生产订单功能的一部分,与数量无关。根本不开发票

    要了解某个字段的含义,可以参考帮助(站在表中的某个字段上按F1)。这并不适用于所有领域。另一种方法(如果您是开发人员并且拥有许可证)是使用开发人员工具包(可以在安装CD或中找到)。此实用程序允许搜索导航对象之间的依赖关系


    关于web服务。 不要试图直接使用这些表格