WebApi保存接口IsDeleteEntry使用说明原创
金蝶云社区-eris
eris
12人赞赏了该文章 2955次浏览 未经作者许可,禁止转载编辑于2021年03月24日 10:51:42

说明:IsDeleteEntry是在修改单据时控制单据体是否需要删除, 默认值为true,代表删除没有传入内码的分录。特别需要注意一点的是,如果没有使用NeedUpdateFields控制,则是根据传入数据包来处理,比如有单据体1和单据体2,如果数据包只传入单据体1,则不会处理单据体2 。

示例:假设一张内码为1001的单据,存在分录内码为10001,10002 两行的单据体1,和存在分录内码为20001,20002两行的单据体2.

1, 修改单据体1内码为10001的行,其他不变


{ "IsDeleteEntry": "false",

    "Model": {

        "FID": 1001,

        "FEntity1": [

            {

               "FEntryID": 10001,

                "FQty": 22

            }

        ] }

}

2, 修改单据体1内码为10001的行,单据体1内码为10002的行删除

{ "IsDeleteEntry": "true",

    "Model": {

        "FID": 1001,

        "FEntity1": [

            {

               "FEntryID": 10001,

                "FQty": 22

            }

        ] }

}

3, 删除单据体1所有分录

{ "IsDeleteEntry": "true",

    "Model": {

        "FID": 1001,

        "FEntity1": [

            {

            }

        ] }

}

4,新增单据体1一行新分录, 删除单据体1所有旧所有分录

{ "IsDeleteEntry": "true",

    "Model": {

        "FID": 1001,

        "FEntity1": [

            {

               "FQty": 22

            }

        ] }

}

5,删除单据体1和单据体2所有的分录

{ "IsDeleteEntry": "true",

    "Model": {

        "FID": 1001,

        "FEntity1": [

            { }

        ], 

       "FEntity2": [

            { }

        ]}

}

6,删除单据体1所有分录,修改单据体2分录1并新增一条分录

{ "IsDeleteEntry": "true",

    "Model": {

        "FID": 1001,

        "FEntity1": [

            { }

        ], 

       "FEntity2": [

            {        //修改分录

              "FEntryID": 20001,

                "FQty": 22

             },

            {     //保存分录不变

              "FEntryID": 20002

             },

         {     //新增一条分录  

                "FQty": 22

             },

        ]}

}


赞 12