我们正在考虑使用Microsoft Dynamics GP 10 Web服务,并希望使用PHP来创建/更新客户和销售......所以问题是:这是否可能,如果是这样任何人都知道那里有很好的文档?使用PHP的Microsoft Dynamics GP 10 Web服务
我没有发现任何与使用PHP有关的问题,这个问题的另一部分将是安全证书,如果PHP能够正确传递所需的登录并与GP的Web服务充分交互?
任何想法或已知资源?
我们正在考虑使用Microsoft Dynamics GP 10 Web服务,并希望使用PHP来创建/更新客户和销售......所以问题是:这是否可能,如果是这样任何人都知道那里有很好的文档?使用PHP的Microsoft Dynamics GP 10 Web服务
我没有发现任何与使用PHP有关的问题,这个问题的另一部分将是安全证书,如果PHP能够正确传递所需的登录并与GP的Web服务充分交互?
任何想法或已知资源?
对于它的价值,我使用了一组称为eConnect的存储过程来执行GP集成。它可能不是最优雅的解决方案,但它运行得很好。 eConnect也被Microsoft记录得很好。
如果您选择使用这种集成,熟悉敏捷应用程序是明智的。学习敏捷应用程序对于对象和表映射有很多帮助,它应该可以从客户源免费下载。
这里是一个eConnect存储过程的例子来创建一个客户记录:
$sql = "declare @p115 int
set @p115=0
declare @p116 varchar(255)
set @p116=''
exec dbo.taUpdateCreateCustomerRcd
@I_vCUSTNMBR = '123456',
@I_vCUSTNAME = 'Company Name',
@O_iErrorState = @p115 OUTPUT,
@oErrString = @p116 OUTPUT
select @p115, @p116";
要执行它只是像做了以下(使用PHP ADODB在这个例子中):
gp_execute_sp($sql); function gp_execute_sp($sql, $transactions = true) { global $DBGP; if($transactions) $DBGP->StartTrans(); $rs = $DBGP->Execute($sql); if(is_object($rs) && !$rs->EOF) { if($rs->fields['computed'] != 0) { if($transactions) $DBGP->FailTrans(); throw new Exception(get_error_desc($rs->fields['computed'])); } } elseif(!is_object($rs)) { if($transactions) $DBGP->FailTrans(); throw new Exception("Database Connection Error."); } else { if($transactions) $DBGP->FailTrans(); throw new Exception("Stored proceedure did not return a result."); } if($transactions) $DBGP->CompleteTrans(); } function get_error_desc($value) { global $DBGP; if(is_numeric($value)) { $result = "No Error Available"; $sql = "SELECT ErrorDesc FROM DYNAMICS..taErrorCode WHERE ErrorCode=?"; $rs = $DBGP->execute($sql, array($value)); if(!$rs->EOF) { $result = $rs->fields['ErrorDesc']; } } else { $result = $value; } return $result; }
我还没有使用动态GP,但根据我的开发人员指南雷丁是有传统的端点和本地端点,但让我看不出有什么REAS都是SOAP服务关于为什么你不能使用PHP的SOAP客户端。
$client = new SoapClient('http://machine_name:<port_number>/Dynamics/GPService');
$result = $client->GetCompanyList(...);
,我不知道......发生的事情,但同样是上面没有理由,因为SOAP适用于大多数语言包括PHP的工作应该是不可能的,它只是不会像尽可能简单。
编辑:使用WSDL到PHP类生成器可能会有所帮助。请参阅:generate php code from wsdl
PHP可以很容易地与网站进行交互(但繁琐)。问题是,是否值得你花时间用GP来做到这一点。 –
@Marc - 我想问题是多么单调乏味:)如果它有点乏味,我们可能会好起来的。我想大多数使用GP网络服务的人都在使用.net,所以我找不到使用PHP的文档。微软的文档似乎都是以.net为中心的,所以没有太大的帮助。在我们潜入水中之前,我想我只是想知道水有些游泳能力。 –
除非您可以在某个地方找到API库,否则yhou会被卡住,试图在PHP中重新创建浏览器以模拟某人坐在真实的浏览器中并点击/输入/更改数据......例如......乏味。 –