2016-04-20 34 views
0

我制作了一个演示脚本,用PHP创建一个新的销售订单。 这里是我的代码:Acumatica submitresult

$acumatica = new AcumaticaGate($this->acuAccName,$this->acuAccPass,$this->acuServiceUrl); 

     $SO301000GetSchema = $acumatica->client->SO301000GetSchema(new ObjectDocument\GetSchema()); 
     $SO301000GetSchema = $SO301000GetSchema->GetSchemaResult; 
     $acumatica->client->SO301000Clear(new ObjectDocument\Clear()); 

     $SO301000Submit = new ObjectDocument\Submit(); 

     $SO301000Submit->commands = array 
     (
      $acumatica->prepareValue("SO", $SO301000GetSchema->OrderSummary->OrderType), 
      $acumatica->prepareValue("<NEW>", $SO301000GetSchema->OrderSummary->OrderNbr), 
      $acumatica->prepareValue("ACTIVESTAF", $SO301000GetSchema->OrderSummary->Customer), 

      $SO301000GetSchema->DocumentDetails->ServiceCommands->NewRow, 
      $acumatica->prepareValue("AALEGO500", $SO301000GetSchema->DocumentDetails->InventoryID, true), 
      $acumatica->prepareValue("HQ", $SO301000GetSchema->DocumentDetails->Branch), 

      $SO301000GetSchema->Actions->Save 
     ); 
     $result = $acumatica->client->SO301000Submit($SO301000Submit); 
     print_r($result); 

一切正常,它插入Acumatica网站一个新的销售订单。但是我打印的结果没有内容。 这里疗法语句的结果print_r($result)

stdClass Object 
(
    [SubmitResult] => stdClass Object 
     (
     ) 
) 
+0

提交返回一个多维数组。你确定在PHP中的print_r可以正确输出吗?你可以尝试使用var_dump吗? – Gabriel

+0

我对这个问题的答案: 加入我们想要的命令$ SO301000GetSchema->动作 - >保存, 除权后返回现场: $ SO301000GetSchema->动作 - >保存, $ SO301000GetSchema-> OrderSummary - > OrderNbr 除此之外,我不知道什么关于C#,但在PHP中,我一定要取代命令:$ acumatica-> prepareValue( “”,$ SO301000GetSchema-> OrderSummary-> OrderNbr), 通过命令: $ SO301000GetSchema-> Actions-> Insert, –

回答

0

您没有收到任何外地赶回,因为你没有调用保存操作后指定的字段名。如果将这些字段添加到命令数组中,它们将返回结果中,例如

$SO301000Submit->commands = array 
    (
     $acumatica->prepareValue("SO", $SO301000GetSchema->OrderSummary->OrderType), 
     $acumatica->prepareValue("<NEW>", $SO301000GetSchema->OrderSummary->OrderNbr), 
     $acumatica->prepareValue("ACTIVESTAF", $SO301000GetSchema->OrderSummary->Customer), 

     $SO301000GetSchema->DocumentDetails->ServiceCommands->NewRow, 
     $acumatica->prepareValue("AALEGO500", $SO301000GetSchema->DocumentDetails->InventoryID, true), 
     $acumatica->prepareValue("HQ", $SO301000GetSchema->DocumentDetails->Branch), 

     $SO301000GetSchema->Actions->Save 

     // Fields to be returned added here 
     $SO301000GetSchema->OrderSummary->OrderNbr 
     $SO301000GetSchema->OrderSummary->CuryOrderTotal 
    );