Förbättringar av VTAP JavaScript API

Vi är glada över att kunna tillkännage betydande förbättringar av VTAP JavaScript API, designade för att ge utvecklare och partners som arbetar med Vtiger CRM.

Dessa förbättringar fokuserar på att förbättra flexibiliteten och funktionaliteten hos plattformen, särskilt inom Event-modulen och RelatedRecords API. Nedan beskriver vi de viktigaste uppdateringarna som gör att du kan skapa många dynamiska och responsiva CRM-lösningar.

Förbättring 1: Stöd för extra fält i RelatedRecords API

Vi har utökat VTAP RelatedRecords API till att omfatta stöd för extrafält parameter, vilket gör att du kan hämta ytterligare fält utöver de standard som tillhandahålls. Denna förbättring erbjuder mer flexibilitet när du arbetar med relaterade poster, vilket möjliggör rikare datainteraktioner.

VTAP.Detail.RelatedRecords

Detta API hämtar relaterade poster för en given modul. Som standard innehåller den fält som är aktiverade för Snabbskapa, Header, etc. Med den nya extrafält parameter kan du nu ange ytterligare fält som ska inkluderas i svaret, vilket ger större insikt i relaterad data.

Exempel på användningsfall: Anta att du arbetar med modulen Kontakter och vill hämta relaterade ärendeposter som inkluderar fält som t.ex. case-kanal och slastatus, som inte är en del av standardsvaret. Du kan nu enkelt inkludera dessa fält i din API-förfrågan:


  

VTAP.Detail.RelatedRecords("Cases", { 'extrafields': ['casechannel', 'slastatus'] })

    .then((case_records) => {

        // Process the retrieved case records with extra fields

    });


  

VTAP.Detail.RelatedRecords("Cases", { 'extrafields': ['casechannel', 'slastatus'] })

    .then((case_records) => {

        // Process the retrieved case records with extra fields

    });

 

Förbättring 2: Stöd för etikettkolumn i RelatedRecords API

Utöver ovanstående förbättringar har vi även lagt till stöd för etikettkolumnen i VTAP RelatedRecords API. Denna förbättring låter dig inkludera postnamnet (etiketten) i API-svaret, vilket gör det lättare att identifiera och arbeta med relaterade poster.

VTAP.Detail.Record

Tidigare stödde inte RelatedRecords API inkluderingen av etikettkolumnen, som innehåller namnet på posten. Nu, genom att använda extrafields-parametern, kan du begära denna etikett i dina API-anrop.

Exempel på användningsfall: När du hämtar relaterade ärendeposter kanske du vill inkludera postens namn för enkel identifiering. Skicka helt enkelt etiketten som ett extra fält:

 

Förbättring 2: Stöd för etikettkolumn i RelatedRecords API

Utöver ovanstående förbättringar har vi även lagt till stöd för etikettkolumnen i VTAP RelatedRecords API. Denna förbättring låter dig inkludera postnamnet (etiketten) i API-svaret, vilket gör det lättare att identifiera och arbeta med relaterade poster.

VTAP.Detail.Record

Tidigare stödde inte RelatedRecords API inkluderingen av etikettkolumnen, som innehåller namnet på posten. Nu, genom att använda extrafields-parametern, kan du begära denna etikett i dina API-anrop.

Exempel på användningsfall: När du hämtar relaterade ärendeposter kanske du vill inkludera postens namn för enkel identifiering. Skicka helt enkelt etiketten som ett extra fält:


  

VTAP.Detail.RelatedRecords("Cases", { 'extrafields': ['label'] })

    .then((case_records) => {

        // The response now includes the label (name) of each case

    });


  

VTAP.Detail.RelatedRecords("Cases", { 'extrafields': ['label'] })

    .then((case_records) => {

        // The response now includes the label (name) of each case

    });

 

Dessa förbättringar är en del av vårt pågående åtagande att förse dig med kraftfulla verktyg för att bygga dynamiska applikationer av företagsklass på Vtiger CRM-plattformen. Vi uppmuntrar dig att utforska dessa nya funktioner och integrera dem i dina projekt för att förbättra den övergripande användarupplevelsen.

Håll ögonen öppna för fler uppdateringar och glad kodning!

 

Dessa förbättringar är en del av vårt pågående åtagande att förse dig med kraftfulla verktyg för att bygga dynamiska applikationer av företagsklass på Vtiger CRM-plattformen. Vi uppmuntrar dig att utforska dessa nya funktioner och integrera dem i dina projekt för att förbättra den övergripande användarupplevelsen.

Håll ögonen öppna för fler uppdateringar och glad kodning!

 
 
 

VTAP Customer Use Case

 
 

En kund begärde att inte visa inbjudna-blocket i händelsemodulen för andra anpassade händelser än samtal och möte. Det tog upp utrymme på skärmen utan användning för anpassade händelser som användes för interna händelser.

Förbättrad händelsehantering i händelsemodulen

VTAP Event API inkluderar nu möjligheten att kontrollera synligheten för inbjudna-blocket i Event-modulen. Denna förbättring möjliggör exakt kontroll över användargränssnittet, skräddarsytt för din applikations specifika behov.

  • VTAP.Event.Register: Denna funktion låter dig registrera händelser på klientsidan och ta emot återuppringningar när dessa händelser inträffar i användargränssnittet. En omfattande lista över evenemang som stöds finns här.
  • VTAP.Event.Trigger: Denna funktion tvingar fram exekveringen av händelser som tillhandahålls av Vtiger UI. Vi har introducerat två nya händelser för att visa och dölja blocket Inbjudna i händelsemodulen:
  • EVENT_SHOW_INVITEES: Utlöser visningen av inbjudna-blocket.
  • EVENT_HIDE_INVITEES: Döljer blocket Inbjudna.

Du kan utnyttja dessa händelser för att dynamiskt styra synligheten baserat på användarinmatning. För andra aktivitetstyper kan du dölja blocket Inbjudna för att effektivisera användarupplevelsen.

Skapa ett VTAP-skript för Event-modulen med namnet Invitees och kopiera nedanstående funktion för att dölja Invitees-blocket för annan aktivitetstyp än Meeting och Call:

 

En kund begärde att inte visa inbjudna-blocket i händelsemodulen för andra anpassade händelser än samtal och möte. Det tog upp utrymme på skärmen utan användning för anpassade händelser som användes för interna händelser.

Förbättrad händelsehantering i händelsemodulen

VTAP Event API inkluderar nu möjligheten att kontrollera synligheten för inbjudna-blocket i Event-modulen. Denna förbättring möjliggör exakt kontroll över användargränssnittet, skräddarsytt för din applikations specifika behov.

  • VTAP.Event.Register: Denna funktion låter dig registrera händelser på klientsidan och ta emot återuppringningar när dessa händelser inträffar i användargränssnittet. En omfattande lista över evenemang som stöds finns här.
  • VTAP.Event.Trigger: Denna funktion tvingar fram exekveringen av händelser som tillhandahålls av Vtiger UI. Vi har introducerat två nya händelser för att visa och dölja blocket Inbjudna i händelsemodulen:
  • EVENT_SHOW_INVITEES: Utlöser visningen av inbjudna-blocket.
  • EVENT_HIDE_INVITEES: Döljer blocket Inbjudna.

Du kan utnyttja dessa händelser för att dynamiskt styra synligheten baserat på användarinmatning. För andra aktivitetstyper kan du dölja blocket Inbjudna för att effektivisera användarupplevelsen.

Skapa ett VTAP-skript för Event-modulen med namnet Invitees och kopiera nedanstående funktion för att dölja Invitees-blocket för annan aktivitetstyp än Meeting och Call:


  

var Events_Component_Invitess = VTAP.Component.Core.extend({

    mounted() {

        VTAP.Event.Register("CREATE_MODAL_SHOWN", (data) => { this.observeEventsFormActivityType(data); });

        VTAP.Event.Register("EDIT_MODAL_SHOWN", (data) => { this.observeEventsFormActivityType(data); });

    },

    methods : {

        observeEventsFormActivityType(data) {

            if (data.module == "Events") {

                setTimeout(() => {

                    var element = jQuery('select[name="activitytype"]');

                    if (element.length) {

                        this.handleEventsFormActivityType(element.get(0).value);

                        element.on('change', () => { this.handleEventsFormActivityType(element.get(0).value); }); /* changes */

                    } else {

                        if(data && data.record) {

                            VTAP.Api.Get('records', {

                                'module': 'Events',

                                'id': data.record

                            }, (error, response) => {

                                this.handleEventsFormActivityType(response.activitytype);

                            });

                        }

                    }

                }, 500);

            }

        },

        handleEventsFormActivityType(activityType) {

            if (activityType == "Call" || activityType == "Meeting") {

                VTAP.Event.Trigger("EVENT_SHOW_INVITEES");

            } else {

                VTAP.Event.Trigger("EVENT_HIDE_INVITEES");

            }

        }

    }

});


  

var Events_Component_Invitess = VTAP.Component.Core.extend({

    mounted() {

        VTAP.Event.Register("CREATE_MODAL_SHOWN", (data) => { this.observeEventsFormActivityType(data); });

        VTAP.Event.Register("EDIT_MODAL_SHOWN", (data) => { this.observeEventsFormActivityType(data); });

    },

    methods : {

        observeEventsFormActivityType(data) {

            if (data.module == "Events") {

                setTimeout(() => {

                    var element = jQuery('select[name="activitytype"]');

                    if (element.length) {

                        this.handleEventsFormActivityType(element.get(0).value);

                        element.on('change', () => { this.handleEventsFormActivityType(element.get(0).value); }); /* changes */

                    } else {

                        if(data && data.record) {

                            VTAP.Api.Get('records', {

                                'module': 'Events',

                                'id': data.record

                            }, (error, response) => {

                                this.handleEventsFormActivityType(response.activitytype);

                            });

                        }

                    }

                }, 500);

            }

        },

        handleEventsFormActivityType(activityType) {

            if (activityType == "Call" || activityType == "Meeting") {

                VTAP.Event.Trigger("EVENT_SHOW_INVITEES");

            } else {

                VTAP.Event.Trigger("EVENT_HIDE_INVITEES");

            }

        }

    }

});

 
 

Registrera dig för att få de senaste uppdateringarna!