感觉b1就是一个坑,做b1开发几个星期了遇到了许许多多的问题。这次我遇到的是在本地b1可以好好运行的代码,发布到b1 cloud上就怎么也运行不了。
我自己一查在上面报错的代码是SAPbouiCOM.CompanyClass.GetDICompany()这个方法。在b1 中这个方法是用于获取公司用的。本地上用是没有问题的,但是在B1 Cloud上时要注意了。 我们需要去B1 Cloud安装B1的那台机器,查看以下路径的文件:
1.C:\Program Files (x86)\SAP\SAP Business One\Conf\b1-local-machine.xml
这个是我本地的B1的截图,如果你是B1 Cloud上的话,在LicenseSerber 的key 应该是localhost,接下来我们去另一个路径下。(请看2)
2.C:\Program Files (x86)\SAP\SAP Business One DI API\Conf\b1-local-machine.xml
在这个路径下的LicenseSerber 是你在B1 Cloud上注册的LicenseSerber,然后修改 1(C:\Program Files (x86)\SAP\SAP Business One\Conf\b1-local-machine.xml)路径下的LicenseSerber,改成与2路径下的相同,那么问题就解决了