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.

...

Squelette de la surcharge

Bloc de code
languagejsonnone
WebhookDefinitionOverload_xxx

// WebhookDefinitionOverload_xxx
// @Description             =>  Overload webhook definition

languageCode     = VARGET_SHELL( "languageCode", "WebhookDefinition" )

specificOverload = TRANSLATE( "
  {
    'extendedFieldsListToExclude': '',
    'simpleFieldsList': '',
    'relatedTablesCount': '',
    'relatedTables': [],
    'authorizedTables': [],
    'cascadeDeleteTables': [],
    'fieldsList': {
    
    },
    strictFilters: [
      
    ],
    'strictOrderBy': [
      
    ],
    'outOfMainTableFields': [
      
    ]
  }
" )
RETURN( "<varscript>specificOverload</varscript>" )

...

On pourrait considérer que ceci est redondant avec 'extendedFieldsListToExclude', mais il s'agit ici d'une autre façon d'arriver à la même chose mais en plus il permet d'exclure les champs pour le 'resultType' en 'simple'.

Bloc de code
languagenone
'fieldsList': {
    'serialnumber': {
        'canGet': 0
    },
    'location': {
        'canGet': 0
    }
}

...

Bloc de code
languagejson
"customer": {
  "codecustomer" : "C0000001",
  "name": "ENTREPRISE DIJON GUICHARD" 
  "baseuser_ID" : "DUPREZ - Secteur Ouest GRO",

Après :

Bloc de code
languagejson
"customer": {
  "Code du client" : "C0000001",
  "Nom du client": "ENTREPRISE DIJON GUICHARD" 
  "Utilisateur lié au client" : "DUPREZ - Secteur Ouest GRO",

...

-> Résultat :

Bloc de code
languagejson
"fields": [
  {
    "fieldName" : "name",
    "fieldType": "varchar" 
    "fieldLength" : "255",
    "fieldLabel" : "Nom du contact",
  }
]

...

Bloc de code
languagejson
"fields": [
  {
    "fieldName" : "generictype_ID_country",
    "fieldType": "foreignkey" 
    "fieldLength" : "",
    "fieldLabel" : "Pays",
  }
]

Après :

Bloc de code
languagejson
"fields": [
  {
    "fieldName" : "generictype_ID_country",
    "fieldType": "foreignkey-varchar" 
    "fieldLength" : "255",
    "fieldLabel" : "Pays",
  }
]

...

Bloc de code
languagejson
"action": 
[
  "verb": "PUT"
},
"data":
{
  "customer" :
  {
    "name" : "ENTREPRISE DIJON GUICHARD",
    "postalCode": "21000" 
    "city" : "DIJON",
    ...

Après :

Bloc de code
languagejson
"action": 
[
  "verb": "PUT"
},
"data":
{
  "customer" :
  {
    "Nom_du_client" : "ENTREPRISE DIJON GUICHARD",
    "Code_Postal": "21000" 
    "city" : "DIJON",
    ...

...

  • Je veux filtrer mes équipements sur une localisation donnée (sw_data_equipmentaddress.customeraddress_ID) qui est active à une date précise (sw_data_equipmentaddress.startDate et endDate)

...

Bloc de code
languagejson
"filters": 
{
  "locationCodeCustomerAddressAndDate": "1347&&2024-05-04 07:06:36"
}
Info

Les paramètres sont séparés par un &&

Dans notre exemple :

  • valueToBeReplaced1 %valueToBeReplaced1% sera remplacé par 1347‘1347’

  • valueToBeReplaced1 %valueToBeReplaced2% sera remplacé par 2024‘2024-05-04 07:06:3636’

Tris

Permet de rajouter des tris spécifiques pour interroger les données en mode LIST.

...