AX2009中部署与测试AIF WCF服务的详细教程

需积分: 9 0 下载量 50 浏览量 更新于2024-09-11 收藏 362KB DOCX 举报
本文主要介绍了如何在Microsoft Dynamics AX 2009环境中安装和创建AIF (Application Integration Framework) 的WCF服务。AIF是一种用于企业级应用集成的工具,它允许数据和服务在不同的系统之间无缝交互。 首先,确保已经安装了.NET Business Connector,这是创建AIF Web Services的前提条件。运行setup.exe安装程序,选择添加或修改组件选项,然后选择AIF Webservices。在安装过程中,注意查看并记录下系统自动生成的虚拟目录名称,这个名称将在后续步骤中用到。 第二步是设置AIF网站。在AX 2009的基本设置>设置>应用程序框架>网站中,创建一个新的网站记录,指定名称和虚拟目录共享路径。由于AIF在安装后会自动在C:\ProgramFiles\MicrosoftDynamicsAX\50\下生成AifWebServices文件夹,所以在填写路径时,需要定位到这个文件夹在网络中的共享路径。 接下来是新增Service,首先在代码中创建一个新的类,并在其中添加方法。确保在新创建的类的RunOn属性设置为server,以便在服务器上运行。然后,在Service属性中设置Namespace为"http://schemas.microsoft.com/dynamics/2008/01/services",并在Class属性中指定新创建的类。接着,为Service添加Operations,按照界面提示完成配置。 第四步是启用和生成服务。回到AX 2009的基本设置>设置>应用程序框架>服务,找到之前添加的服务,勾选启用选项,然后点击生成按钮。这将触发服务的编译和部署。 最后,进行WCF服务的测试。打开Internet Information Services (IIS),定位到Default Web Site,检查是否能看到新生成的服务。可以通过浏览器访问生成的URL来验证WCF服务是否正常工作,或者通过其他客户端工具(如Postman)调用服务接口,确认数据和服务能否正确响应。 整个过程涉及AIF的环境配置、网站设置、服务创建和测试,这些都是确保企业内部系统间高效数据交换的关键步骤。通过这些操作,可以充分利用AIF的强大功能,提高业务流程的自动化和集成性。

修改代码使其能够正确运行。import pandas as pd import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D from sklearn.preprocessing import MinMaxScaler import cv2 import open3d as o3d from skimage import color import colour from scipy.spatial import ConvexHull def convert_data(data): res=[] data=data.tolist() for d in data: res.append(tuple(d)) # print(res) return res def load_data_and_plot_scatter(path1="1号屏srgb+rgb16预热10分钟切换0.5s.csv"): df1 = pd.read_csv(path1)[["X", "Y", "Z", "R", "G", "B"]] X1 = df1["X"].values Y1 = df1["Y"].values Z1 = df1["Z"].values df1_c = df1[["R", "G", "B"]].values / 255.0 XYZT = np.array([X1,Y1,Z1]) XYZ = np.transpose(XYZT) ABL = colour.XYZ_to_Lab(XYZ) LABT = np.array([ABL[:,1], ABL[:,2], ABL[:,0]]) LAB = np.transpose(LABT) # 将 numpy 数组转换为 open3d 中的 PointCloud 类型 pcd = o3d.geometry.PointCloud() pcd.points = o3d.utility.Vector3dVector(LAB) # 估计点云法向量 pcd.estimate_normals() # 计算点云的凸包表面 mesh = o3d.geometry.TriangleMesh.create_from_point_cloud_alpha_shape(pcd, alpha=0.1) mesh.compute_vertex_normals() # 获取凸包表面上的点的坐标 surface_points = np.asarray(mesh.vertices) # 显示点云的凸包表面 o3d.visualization.draw_geometries([mesh]) # 创建一个 3D 坐标 fig = plt.figure() # ax = Axes3D(fig) ax = plt.axes(projection='3d') ax.scatter(LAB[:,0], LAB[:,1], LAB[:,2], c=df1_c) # # 设置坐标轴标签 ax.set_xlabel('a* Label') ax.set_ylabel('b* Label') ax.set_zlabel('L Label') # 显示图形 plt.show() if __name__ == "__main__": load_data_and_plot_scatter()

2023-06-12 上传