Ir al contenido principal

Consuming X3 SOAP Web Services in Update 9 from .net

Origen: https://www.rklesolutions.com/blog/x3-soap-web-services



There were several changes to the way classic SOAP web services work in X3 Update 9. One change is the elimination of the web service tester from the browser. Details on this are in my blog post on Testing X3 SOAP Web Services in Update 9.
Another change is how classic SOAP web services are consumed with .net. This blog summarizes some of the bumps I encountered while trying to prepare .net applications to consume X3 web services in Update 9.

WSDL

The first change is the wsdl file that is referenced in the .net project. In previous versions of X3, the wsdl was added to the project as a Web Reference, using a format similar to below:
http://[x3server]:[port]/adxwsvc/services/CAdxWebServiceXmlCC?wsdl
The new wsdl url is now in the following format:
http://[x3server]:[port]/soap-wsdl/syracuse/collaboration/syracuse/CAdxWebServiceXmlCC?wsdl
This can also be found by going to the SOAP Generic Web Services option under Administration / Web Services.

The Url is displayed below the description. To get the full url, just add the prefix http://[x3server]:[port]/ in front of the url.

One thing that originally stumped me was that the first wsdl was still valid when attempting to add it as a web reference for Update 9, so everything appeared to be okay, but the .net program call to the X3 web service wouldn't work.

AUTHENTICATION

The second change is the authentication method. In prior versions, the X3 authentication information (user name and password) was included in the context. In Update 9, the user name and password are no longer included in the context, but they can be passed using basic authentication.
Below is an example of adding basic authentication to the web service call.
  • Create a class called BasicAuth which inherits the CAdxWebServiceXmlCCService class from the wsdl. Method GetWebRequets in this class adds the basic authentication information to the web request header.
CAdx Web Service
  • The Web Service call is instantiated as a BasicAuth type, which is the class created above.BasicAuth
  • The credentials are added to the Web Service.
X3Webserivce Credientials
  • The web service is called in the same way it was called in previous versions of X3.

OVERVIEW OF STEPS

Below is a summary of the steps required to call a classic SOAP Web Service from Update 9 from a .Net program.
  • Add the X3 wsdl to the .net project as a Web Reference. (Add Service Reference – Advanced – Add Web Reference.) X3_WSDL
  • Create a class to add the Basic Authorization to the header of the SOAP request.Public Class
Call the web service. Below is an example. The parameters will vary based on the type of web service being called (object vs. subprogram) and the operation being called. The example below is an X3 subprogram published as a web service.
private_void

Entradas populares de este blog

Valores de fstat

Fstat fstat  is a numeric status that is returned upon execution of a database operation, a sequential file operation, or a lock instruction. Syntax fstat Examples # MYTABLE is a table with a key called KEY1, that has a unique component called KEYVAL # Create a record in the table MYTABLE with they key value 1 if it doesn't exist Local File MYTABLE [MYT] Read [MYT]KEY1=1 If fstat [MYT]KEYVAL=1 : Write [MYT] If fstat MSG="The key was created in the mean time" Else MSG="Key created" Endif Else MSG="Key already exists" Endif Details fstat  is always set to '0' if the operation is successfully completed, and has a non-null value if there is an error: In a sequential read ( Getseq  and  Rdseq ),  fstat  is set to '1' at the end of the file. On  Lock ,  fstat  is set to '1' if the lock could not be performed. For a database operation ( Read ,  Look ,  Readlock ,  For ,  Write ,  ...

3 ways to send a mail from code in Sage X3, with more attachments too

Origen Fuente:  https://en.sagedev.it/sagex3/send-mail-from-code-with-attachments-sage-x3/ Autor:  https://en.sagedev.it/category/sagex3/ In this post I’ll show you how to send a mail from adonix code in Sage X3. The points we will face are: 1) Meladx/Send introduction 2) Sending  through  meladx (the best way for me: at the end with just a single code line you send a mail!) 3) Sending  through  Workflow 4) Sending  through  ENVOI_MAIL(…) From AWRKMEL Sending mail from code in Sage X3: Send vs meladx Sage X3 has two native ways for sending mails. The first way is  meladx  executable file, that you can find in  runtime\bin  directory. The seconde one is Send instruction, that was used to send mail through an application of the client station (for more information on “Send GSERMES”  go here ). The Meladx executable Meladx send messages through SMTP/POP3 protocols by means of the mail  ...

How to Install and Manage Sage X3 Add-Ins in Microsoft Office

When you enable an add-in, it adds custom commands and new features to Microsoft Office programs that help increase your productivity. In this blog post, we’ll review how to install the Sage X3 Add-In for MS Excel and what to do if your Sage X3 Add-In is missing. Fuente original: https://www.netatwork.com/how-to-install-and-manage-sage-x3-add-ins-in-ms-office/ How to Install the Sage X3 Add-In in Microsoft Excel Go to Administration > Utilities > Installation > Install addins for Office V11 Image:   V12 Image:   It should begin downloading the exe, open the exe Next > Install   Open Excel > File > Options   Select Add–Ins > Manage: COM Add-ins > Go   Check the “Excel AddIn for Sage” > Ok   You are now ready to export Excel-based reports/grids from Sage X3. How to troubleshoot and fix a missing Sage X3 add-in in Microsoft Excel Open the Microsoft Office product where the  Sage X3  add-in is missing. Go to Options: Se...