微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 PHP 中使用 NAV Dynamics WS?

如何解决如何在 PHP 中使用 NAV Dynamics WS?

我需要将 Navision 连接到我的 PHP 应用程序。我尝试使用我在论坛中阅读过的不同方式,但它们都不起作用。我不知道我是否应该使用 SOAP、cURL 或其他,有人可以指导我吗?

编辑:

我尝试了以下代码,但它也不起作用。

$opts = array(
'http' => array(
    'user_agent' => 'PHPSoapClient'
)
);
$context = stream_context_create($opts);

$client = new SoapClient('http://URL:7047/DynamicsNAV/WS/COMPANY/Page/mypage?wsdl/',['trace' => 1,'cache_wsdl' => WSDL_CACHE_NONE,'stream_context' => $context,'user_agent' => 'USERAG','soap_version'   => SOAP_1_2]);
$security = array(
    'UserName' => array(
        'UserName'=>'COMPANY\MYUSER','Password'=>'mypass',)
);
$client->__getLastResponse();
$header = new SoapHeader('ChannelFactory','Credentials',$security,false);
$client->__setSoapHeaders($header);

$checkVatParameters = array(
    'level' => '01');

$result = $client->checkVat($checkVatParameters);
print_r($result);

try {
    $ret = $client->getAllItm();
    print_r($ret);
}catch(Exception $e){
    echo $e->getMessage();
}

致命错误:未捕获的 SoapFault 异常:[WSDL] SOAP-ERROR:解析 WSDL:无法从 myurl 加载

解决方法

    $.soap({
        url: "http://url:7047/DynamicsNAV/WS/COMPANY/Page/ws_myws",data: {
            user: "user",pass: "pass"
        },dataType: "jsonp",jsonpCallback: "jsonp_callback",crossDomain: true,HTTPHeaders: {
            'Content-Type': 'application/xml','Server-Protocol':'SOAP'
        },success: function (response){
            response = $.format(response.toString(),{method: 'xml' });
            $("#output").text(response);
        }
    })

回应: http://url/WS/COMPANY/Page/ws_myws net::ERR_CONNECTION_TIMED_OUT

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。