Poslužiteljske skripte i poslovi

Uzbuđeni smo što možemo najaviti značajno poboljšanje Vtigerove mogućnosti prilagodbe i automatizacije s modulom Server Scripts & Jobs.

Skriptiranje na strani poslužitelja moćna je mogućnost koja vam omogućuje izvršavanje različitih zadataka. Pomoću ove mogućnosti možete provoditi prilagođene radnje nakon spremanja zapisa ili nakon odobrenja/odbijanja. Također možete postaviti prilagođene pozadinske zadatke za izvršavanje u zakazanim intervalima.

Prije tri godine pokrenuli smo Vtigerovu aplikacijsku platformu (VTAP), okvir za automatizaciju s niskim kodom, kako bismo pomogli tvrtkama da dodatno prilagode svoju Vtiger CRM instancu. S VTAP-om programeri mogu pisati kod na strani klijenta koji se pokreće unutar korisničkog preglednika kako bi omogućili prilagodbu na strani klijenta.

Međutim, postoje mnogi scenariji u kojima se prilagođeni kod mora izvoditi na strani poslužitelja. 

Uz poslužiteljske skripte i poslove, kupci i partneri mogu izravno pokrenuti prilagođeni kod napisan u JavaScriptu na Vtiger poslužiteljima. Ova značajka utire put neograničenoj automatizaciji.

Evo nekoliko primjera:

  • Obogatite svoje podatke o potencijalnim kupcima dohvaćanjem informacija iz drugih izvora.
  • Povremeno uvozite podatke iz vanjskih izvora u CRM.
  • Prilagodite podatke u nadređenim zapisima prema podređenim zapisima ili obrnuto (ažurirajte stanje nepodmirenih računa u svakoj organizaciji).
  • Integrirajte prilagođenu analizu koju pokreće AI.

Ova značajka pokreće ove skripte na strani poslužitelja na dva načina:

  • Skripte poslužitelja: Ovo su skripte na strani poslužitelja koje se izvršavaju kada se dogodi određena radnja. Na primjer, zapis je spremljen ili odobren/odbijen.
  • Poslovi poslužitelja: Ovo su skripte na strani poslužitelja koje se automatski izvršavaju u fiksnim intervalima kao što su svaki sat, dan, tjedan itd.

Koristite slučaj

Shvatimo kako funkcionira skriptiranje na strani poslužitelja pomoću jednostavnog primjera ažuriranja iznosa dospjelih faktura u zapisu organizacije.

Zahtjev: U bilo kojem trenutku trebali biste moći vidjeti iznose dospjelih faktura bilo koje organizacije.

Riješenje: Korištenjem poslužiteljskih skripti to se može lako postići.

  • Kad god se faktura ažurira (iznos ili promjena statusa), aktivirate skriptu.
  • Koristeći Vtigerovu REST metodu, možete povezati sve fakture s organizacijom fakture u skripti.
  • Zbrojite stanje svake fakture.
  • Opet, koristeći Vtigerovu REST metodu, ažurirajte stanje u polju Organizacije.
  • Ovo će osigurati da iznosi dospjelih faktura uvijek budu vidljivi u evidenciji organizacije.


  

async function main(record, user) {

    var orgId = record.account_id;

    try {

        var response = await vtap.macro.ws.api('GET', 'retrieve_related', {

            id: '3x'+orgId,

            relatedLabel: 'Invoice',

            relatedType: 'Invoice'

        });

        if(response && response.success) {

            var overdueAmount = 0;

            for(var index in response.result) {

                var invoice = response.result[index];

                var balance = parseFloat(invoice.balance);

                if(balance && !isNaN(balance)) {

                    overdueAmount = overdueAmount + balance;

                }

            }

            await vtap.macro.ws.revise({

                id: '3x'+orgId,

                cf_outstanding_invoice_amount: overdueAmount

            });

        }

    } catch(error) {

    }

}


  

async function main(record, user) {

    var orgId = record.account_id;

    try {

        var response = await vtap.macro.ws.api('GET', 'retrieve_related', {

            id: '3x'+orgId,

            relatedLabel: 'Invoice',

            relatedType: 'Invoice'

        });

        if(response && response.success) {

            var overdueAmount = 0;

            for(var index in response.result) {

                var invoice = response.result[index];

                var balance = parseFloat(invoice.balance);

                if(balance && !isNaN(balance)) {

                    overdueAmount = overdueAmount + balance;

                }

            }

            await vtap.macro.ws.revise({

                id: '3x'+orgId,

                cf_outstanding_invoice_amount: overdueAmount

            });

        }

    } catch(error) {

    }

}

Da biste saznali više, pogledajte našu pomoć dokumentacija.

 
 
 

Uskoro - ažuriranje proširenja

 
 

Proširenje ažuriranja! 

Trenutačno nemamo način ažuriranja proširenja s Marketplacea. 

S nadolazećim izdanjem pružit ćemo temeljno ažuriranje u kojem će korisnik moći ažurirati proširenja koja su objavljena iz Add-on Publishera. 

Sve promjene napravljene na proširenjima kao što su tijekovi rada, API dizajner, dizajner modula itd. ažurirat će se na instancu korisnika. 

 

Proširenje ažuriranja! 

Trenutačno nemamo način ažuriranja proširenja s Marketplacea. 

S nadolazećim izdanjem pružit ćemo temeljno ažuriranje u kojem će korisnik moći ažurirati proširenja koja su objavljena iz Add-on Publishera. 

Sve promjene napravljene na proširenjima kao što su tijekovi rada, API dizajner, dizajner modula itd. ažurirat će se na instancu korisnika. 

 
 

Prijavite se za primanje najnovijih ažuriranja!