Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

Version minimum

Date de mise à jour

5.4

Fonctionnalité

Pouvoir appeler des URLs d'un logiciel externe depuis Divalto weavy web.

Tables

  • sw_data_externalurl : Table des urls externes.

Critères d'activation

Des codes standards ont été définis dans la table sw_data_externalurl pour définir les urls externes disponibles.

Ces codes ont été implémentés dans Divalto weavy web afin d'ouvrir l'écran du logiciel externe correspondant (généralement depuis le bouton « Action »).

Ci-dessous le tableau résumant les pages Divalto weavy web où les urls externes sont disponibles ainsi que la clé utilisée pour identifier l’enregistrement externe.

Code externalurl

Libellé

Page Divalto weavy web

Clé de l'enregistrement

CustomerContract

Contrat client

[urlweavy]/page/contract/xxxx

sw_data_contract.contractNumber

CustomerDelivery

BL client

[urlweavy]/page/histoheader/xxxx

sw_data_histoheader.docNumber

CustomerInvoice

Facture client

[urlweavy]/page/histoheader/xxxx

sw_data_histoheader.docNumber

CustomerOrder

Commande client

[urlweavy]/page/histoheader/xxxx

sw_data_histoheader.docNumber

CustomerOrder

Commande client

[urlweavy]/page/histoheader/xxxx

sw_data_histoheader.docNumber

CustomerQuote

Devis client

[urlweavy]/page/saleHistory

sw_data_histoheader.docNumber

CustomerWorksQuote

Devis travaux client

[urlweavy]/page/intervention/xxxx [urlweavy]/page/interventionRequest/xxxx

sw_data_intervention.externalID sw_data_interventionrequest.externalID

Deal

Affaire

[urlweavy]/page/deal/xxxx

sw_data_deal.dealNumber

Opportunity

Opportunité

[urlweavy]/page/deal/xxxx

sw_data_deal.dealNumber

ProspectQuote

Devis prospect

[urlweavy]/page/histoheader/xxxx

sw_data_histoheader.docNumber

ProspectWorksQuote

Devis travaux prospect

non implémenté

Fonctionnement

Une fonction de script standard FuncServer_GetExternalUrl est appelée pour récupérer l'URL.

Bloc de code
// FuncServer_GetExternalUrl
// @description     => return external url
//
// @codeexternalurl => code of the sw_data_externalurl table (ie : CustomerWorksQuote, CustomerOrder, CustomerContract, Deal, ....)
// @key             => key of the record for interpretation by the external software (ie : keyCustomerWorksQuote, keyCustomerOrder, keyCustomerContract, keyDeal, ...)
//
// @returns         => interpreted url
//

codeexternalurl = TRANSLATE( "<varscript>arg1</varscript>" )
key             = TRANSLATE( "<varscript>arg2</varscript>" )

returnedUrl = ""

url = VARGET_DBSQL( "select url from sw_data_externalurl where codeexternalurl='<varscript>codeexternalurl</varscript>'" )
url = TRIM( url )

returnedUrl = CALL_SCRIPT( "FuncServerOverload_GetExternalUrl", codeexternalurl, key, url )

IF ( LEN( returnedUrl ) == 0) THEN
  returnedUrl = url
ENDIF

RETURN( returnedUrl )

S'il y a besoin une fonction de surcharge FuncServerOverload_GetExternalUrl est disponible pour retravailler l'url : remplacement de clé d'enregistrement, encodage, ...

Bloc de code
// FuncServerOverload_GetExternalUrl
// @description     => return external url
//
// @codeexternalurl => code of the sw_data_externalurl table (ie : CustomerWorksQuote, CustomerOrder, CustomerContract, Deal, ....)
// @key             => key of the record for interpretation by the external software (ie : keyCustomerWorksQuote, keyCustomerOrder, keyCustomerContract, keyDeal, ...)
// @url             => not interpreted url
//
// @returns         => interpreted url
//

codeexternalurl = TRANSLATE( "<varscript>arg1</varscript>" )
key             = TRANSLATE( "<varscript>arg2</varscript>" )
url             = TRANSLATE( "<varscript>arg3</varscript>" )

returnedUrl = ""

// To complete in overload

RETURN( returnedUrl )

Particularités

Une liaison avec Divalto infinity est implémentée en standard.

La table sw_data_externalurl est alimentée par le ControlCenter External URL vX.6 et le Backend 20. Base Info - ExternalUrl.

Cette surcharge permet de faire du remplacement de clé et de l'encodage en BASE 64, propre aux appels Divalto infinity.

Exemple pour l'appel d'un devis travaux :

  • URL de base telle que enregistrée dans sw_data_externalurl pour le code CustomerWorksCode :

    Bloc de code
    http://xx.xx.xx.xx:yyyy/lcweb/default.aspx?urlDivaMode=1&urlDivaParamc=BASE64[urlDivaProgram=ia.dhop&urlDivaParams=[RunProgram]{_Entity}CustomerWorksQuote{_Key}%1]
  • URL après interprétation par la fonction de surcharge :

    Bloc de code
    http://xx.xx.xx.xx:yyyy/lcweb/default.aspx?urlDivaMode=1&urlDivaParamc=dXJsRGl2YVByb2dyYW09aWEuZGhvcCZ1cmxEaXZhUGFyYW1zPVtSdW5Qcm9ncmFtXXtfRW50aXR5fVdvcmtzUXVvdGV7X0tleX1EVFIgICAgICAgMzEgICAgICAgIEMxMiAgICAgICAgICAgNDQw