Child pages
  • Conversor XML/JSON

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Estamos em processo de migrar todas as nossas mensagens padronizadas para o formato JSON. Consequentemente, também estamos adaptando os EAIs que as utilizam.Durante esse período de transição, faz-se necessária a existência de uma camada de conversão automática.

O conversor recebe uma mensagem em XML e a retorna na nova estrutura definida em JSON, e vice-versa. Estão disponibilizados dois métodos públicos estáticos na classe Conversor

  • ConvertXMLToJSON
  • ConvertJSONToXML


Importando o Conversor

  • Importar a DLL do conversor (StandardMessageConversor.dll). 
            Trata-se de uma DLL desenvolvida em .Net CORE, e portanto pode ser importada em qualquer programa que tenha suporte para tal. 
  • Importar a DLL do Newtonsoft          
             Para projetos em ADVPL, precisa ser utilizada a versão 9.0.1. Para projetos em .NET, qualquer versão acima dessa pode ser utilizada.


Convertendo de XML para JSON 

Code Block
languagec#
titleXML to JSON
  string generatedMsg = Conversor.ConvertXMLToJSON(message);
Code Block
languagec#
titleXML to JSON
    /// <summary>
    /// Recebe uma mensagem padronizada em XML e a retorna em JSON
    /// </summary>
    /// <param name="message">Mensagem no formato XML</param>
    /// <returns>Mensagem padronizada no formato JSON</returns>
    public static string ConvertXMLToJSON(string message);


Convertendo de JSON para XML

Code Block
languagec#
titleXML to JSON
  string generatedMsg = Conversor.ConvertJSONToXML(message, "upsert");
Code Block
languagec#
titleXML to JSON
     /// <summary>
    /// Recebe uma mensagem padronizada em JSON e a retorna em XML
    /// </summary>
    /// <param name="message"> Mensagem no formato JSON</param>
    /// <param name="restVerb"> Verbo em que a mensagem foi recebida pela API Rest. Exemplos: "upsert", "delete". 
    /// O valor colocado nessa variavel será apresentado no elemento Event de BusinessEvent
    /// </param>
    /// <returns>Mensagem padronizada no formato XML</returns>
    public static string ConvertJSONToXML(string message, string restVerb);


Transações suportadas

Abaixo encontram-se as transações que estão sendo suportadas pelo conversor.


TransaçãoStatus
AbsenceEm testes
AccountingCalendarEm testes
AccountingEntryEm testes
AccountingItemEm testes
AccountPayableDocumentEm testes
AccountPayableDocumentDischargeEm testes
AccountReceivableDocumentEm testes
AccountReceivableDocumentDischargeEm testes
ActivityEm testes
AdditionalEntityEm testes
AdditionalEntityTypeEm testes
AddressStockEm testes
AgencyCreditCardEm testes
AgriculturalOwnerEm testes
AgriculturalSectorEm testes
AgriculturalVarietyEm testes
AgriculturalYearEm testes
ApartmentTypeEm testes
AppointmentCostEm testes
AreaAndLineOfBusinessEm testes
AssetDepreciationEm testes
AssetsEm testes
AssetsValuationEm testes
AssignmentGradeEm testes
BalanceBaselineEntryEm testes
BankEm testes
BankTransactionEm testes
BankTransactionsEm testes
BranchEm testes
BroadcastTypeEm testes
BrokerSystemEm testes
BudgetItemsEm testes
CabintypeEm testes
CalculatedTransEm testes
CardClassificationEm testes
CarrierEm testes
CityEm testes
ClassValueEm testes
CommercialFamilyEm testes
CompanyEm testes
ContactEm testes
ContactRelationshipEm testes
ContractEm testes
ControlItemEm testes
ControlItemReportEm testes
CorporateGroupEm testes
CostCenterEm testes
CoverageDocumentEm testes
CreditRiskAnalysisEm testes
CurrencyEm testes
CurrencyQuotationEm testes
CustomerCreditCardEm testes
CustomerEstablishmentEm testes
CustomerShippingAddressEm testes
CustomerVendorEm testes
DeliveryScheduleEm testes
DepartamentEm testes
DirectionTypeEm testes
DisciplineEm testes
DisciplineClassEm testes
DisciplineEnrollmentEm testes
DocumentTypeEm testes
FinancialNatureEm testes
FinancingTradingEm testes
InternalIdLoadEm testes
ItemEm testes
OrderEm testes
OurNumberBankingEm testes
PaymentConditionEm testes
ProjectEm testes
ReversalOfAccountPayableDocumentDischargeEm testes
ReversalOfAccountReceivableDocumentDischargeEm testes
ReversalOfFinancingTradingEm testes
StepProjectEm testes
StockGroupEm testes
StockgroupEm testes
SubProjectEm testes
TaskProjectEm testes
UnitOfMeasureEm testes
UpdateContractParcelEm testes
WarehouseEm testes
EDIDocumentForTransportationEm testes
WorkforceAndOverheadAppointmentEm testes
ElectronicTransportDocumentEm testes
EmployeeEm testes
AccountantAccountEm testes
AccountantDefaultHistoryEm testes
SalesOrderEm testes
EmployeeExceptionEm testes
EmployeeHistorySalaryPositionEm testes
EmployeeHistoryWorkShiftEm testes
EmployeePositionEm testes
EmployeeSituationsEm testes
EnrollmentEm testes
EquipmentEm testes
EquipmentsCostEm testes
EstablishmentEm testes
ExternalAutonomousPaymentEm testes
FamilyEm testes