2017-02-16 7 views
0

「PODラインの追加」スマートパネルを使用して領収書文書にPOラインを追加しようとしています。以下はコードですが、コマンドで指定されたキーの代わりに常に最初の2行を選択します。POLine発行によるPOレシートの画面ベースAPIの作成

//select lines from smart panel 
foreach (POReceiptLine line in POReceiptlines.OrderBy(x => x.LineNum)) 
{ 
    AcumaticaInterface.apitest.Command[] Docline = new AcumaticaInterface.apitest.Command[] 
       {      
        new Key 
        { 
         ObjectName = PORcptSchema.AddPurchaseOrderLine.OrderNbr.ObjectName, 
         FieldName = PORcptSchema.AddPurchaseOrderLine.OrderNbr.FieldName, 
         Value = "='" + line.BaseDocNum + "'", 
         Commit =true 
        }, 
        new Key 
        { 
         ObjectName = PORcptSchema.AddPurchaseOrderLine.LineNbr.ObjectName, 
         FieldName = PORcptSchema.AddPurchaseOrderLine.LineNbr.FieldName, 
         Value = "='" + line.BaseLineNum + "'", 
         Commit =true 
        },    
        new Value 
        { 
         Value = "True", 
         LinkedCommand = PORcptSchema.AddPurchaseOrderLine.Selected, 
         Commit = true 
        } 
       }; 
       Document = Document.Concat(Docline).ToArray(); 
      } 

    // Add PO line and retrieve back the added lines. 
    var addPOLine = new Command[] 
         {        
          addPOLineWithCommit, 
          ////get back the added lines in the grid 
          PORcptSchema.DocumentDetails.POOrderNbr, 
          PORcptSchema.DocumentDetails.POLineNbr 
         }; 
      Document = Document.Concat(addPOLine).ToArray(); 

      var receiptLines = context.PO302000Submit(Document); 

enter image description here

'000012' を私たちは、[ラインのNbr(1,2)]オーダーのNbr '000014' の行を選択しようとしているが、追加された行は、注文のNBRある[ラインのNbr( 1,2)]。手伝ってください。以下は

receiptSchema.AddPurchaseOrderLine.Selected.LinkedCommand = null; 

が見つけ、発注ラインポップアップを追加 でレコードを選択することを可能にする完全なSOAPリクエスト、次のとおりです。

答えて

0

溶液は透明LinkedCommand AddPurchaseOrderLine.Selectedフィールドにデフォルトで設定することです画面ベースAPI経由で:

Content receiptSchema = context.GetSchema(); 

receiptSchema.Actions.AddPOOrderLine.Commit = true; 
receiptSchema.Actions.AddPOOrderLine2.Commit = true; 

receiptSchema.AddPurchaseOrderLine.Selected.LinkedCommand = null; 

var commands = new Command[] 
{ 
    new Value 
    { 
     Value = "Receipt", 
     LinkedCommand = receiptSchema.DocumentSummary.Type 
    }, 

    new Value 
    { 
     Value = "PR000416", 
     LinkedCommand = receiptSchema.DocumentSummary.ReceiptNbr 
    }, 

    new Value 
    { 
     Value = "OK", 
     LinkedCommand = receiptSchema.AddPurchaseOrderLine.ServiceCommands.DialogAnswer, 
     Commit = true 
    }, 

    receiptSchema.Actions.AddPOOrderLine, 

    new Key 
    { 
     ObjectName = receiptSchema.AddPurchaseOrderLine.OrderNbr.ObjectName, 
     FieldName = receiptSchema.AddPurchaseOrderLine.OrderNbr.FieldName, 
     Value = "='PO000483'" 
    }, 
    new Key 
    { 
     ObjectName = receiptSchema.AddPurchaseOrderLine.LineNbr.ObjectName, 
     FieldName = receiptSchema.AddPurchaseOrderLine.LineNbr.FieldName, 
     Value = "='1'" 
    }, 
    new Value 
    { 
     Value = "True", 
     LinkedCommand = receiptSchema.AddPurchaseOrderLine.Selected 
    }, 

    new Key 
    { 
     ObjectName = receiptSchema.AddPurchaseOrderLine.OrderNbr.ObjectName, 
     FieldName = receiptSchema.AddPurchaseOrderLine.OrderNbr.FieldName, 
     Value = "='PO000483'" 
    }, 
    new Key 
    { 
     ObjectName = receiptSchema.AddPurchaseOrderLine.LineNbr.ObjectName, 
     FieldName = receiptSchema.AddPurchaseOrderLine.LineNbr.FieldName, 
     Value = "='2'" 
    }, 
    new Value 
    { 
     Value = "True", 
     LinkedCommand = receiptSchema.AddPurchaseOrderLine.Selected 
    }, 
    receiptSchema.Actions.AddPOOrderLine2, 

    receiptSchema.Actions.Save 
}; 
+0

保存された私の人生。ありがとう! – Hybridzz

+0

あなたは大歓迎です、私の友人! – RuslanDev

関連する問題