VTAP API na jednostavan način: Upravljanje zapisima s funkcijama prekidanja veze, brisanja i filtriranja

S Vtiger Application Platformom (VTAP), programeri sada mogu koristiti pojednostavljeno i programabilno sučelje za izvođenje operacija sa zapisima putem objedinjenog API-ja. Ovaj članak pokazuje kako učinkovito odvojiti povezane zapise, izbrisati ciljane unose i primijeniti napredne filtere - poboljšavajući kontrolu, učinkovitost i pouzdanost u logici vaše aplikacije.

Saznajmo više o gore navedenom.

Sažetak problema

Prilikom upravljanja povezanim zapisima u različitim modulima, korisnici se često suočavaju s operativnim preprekama kao što su:

  • Prekidanje veze povezanih zapisa (npr. uklanjanje povezane fakture ili kontakta iz posla).
  • Trajno brisanje zastarjelih unosa (poput neaktivnih pretplata).
  • Izvršavanje složenih filtera s više uvjeta za dohvaćanje određenih skupova podataka (kao što su plaćanja s definiranim statusima ili ponovni pokušaji).

Ručno izvršavanje ovih zadataka ili uz nejasne API smjernice može dovesti do neučinkovitosti, povećanog rizika od gubitka podataka i nedosljednosti u implementaciji logike.

Cilj

  • Demonstrirajte kako programski odvojiti povezane zapise od nadređenog modula pomoću VTAP-a.
  • Pokažite kako sigurno izbrisati zapis iz modula.
  • Osigurajte strukturiranu metodu za filtriranje zapisa na temelju više uvjeta pomoću parametra q.
  • Podijelite najbolje prakse za dinamičko dohvaćanje ID-ova relacija putem API-ja radi fleksibilnosti i održivosti.

Pojedinosti o implementaciji

Prekidanje veze s povezanim zapisom:

Za uklanjanje veze između dva zapisa (na primjer, prekid veze između fakture i potencijala), upotrijebite sljedeći isječak:


  

VTAP.Api.Delete('records/relationrecords', {

    module: 'Potentials',

    related_module: 'Invoice',

    id: ‘WXYZ’,

    related_record_id: ‘ABCD’,

    relation_id: ‘1234’

}, (error, response) => {

    console.log(response);

});


  

VTAP.Api.Delete('records/relationrecords', {

    module: 'Potentials',

    related_module: 'Invoice',

    id: ‘WXYZ’,

    related_record_id: ‘ABCD’,

    relation_id: ‘1234’

}, (error, response) => {

    console.log(response);

});

Ovim će se samo prekinuti veza između zapisa. Izvorna faktura i potencijal ostat će netaknuti.

Kako dinamički dohvatiti relation_id:


  

VTAP.Detail.Relations('Potentials').then((relations) => {

    console.log(relations);

});


  

VTAP.Detail.Relations('Potentials').then((relations) => {

    console.log(relations);

});

Ovo vraća sve povezane metapodatke za modul Potencijali, uključujući ID-ove relacija i oznake.

Brisanje zapisa:


  

To delete a record (for example, a Subscription), use:

VTAP.Api.Delete('records', {

    module: 'Subscription',

    id: '596'

}, (error, response) => {

    console.log(response);

});


  

To delete a record (for example, a Subscription), use:

VTAP.Api.Delete('records', {

    module: 'Subscription',

    id: '596'

}, (error, response) => {

    console.log(response);

});

Ovim će se trajno ukloniti zapis pretplate s ID-om 596. Koristite ovo samo kada zapis više nije potreban.

Filtriranje zapisa pomoću parametra q:

Za dohvaćanje zapisa iz modula Plaćanja na temelju više uvjeta filtriranja:


  

VTAP.Api.Get("records", {

    module: "Payments",

    q: [[

            ["retrycounter", "equal", ["2"]],

            ["createdtime", "greater", ["2025-05-27"]],

            ["cf_payments_internetdisabledbyvtiger", "equal", ["0"]],

            ["paymentsstatus", "n", ["Received"]]

       ]]

}, (error, response) => {

    if (error) {

        console.error("Error:", error);

    } else {

        console.log(response);

    }

});


  

VTAP.Api.Get("records", {

    module: "Payments",

    q: [[

            ["retrycounter", "equal", ["2"]],

            ["createdtime", "greater", ["2025-05-27"]],

            ["cf_payments_internetdisabledbyvtiger", "equal", ["0"]],

            ["paymentsstatus", "n", ["Received"]]

       ]]

}, (error, response) => {

    if (error) {

        console.error("Error:", error);

    } else {

        console.log(response);

    }

});

Pogodnosti

  • Učinkovito upravljanje zapisimaAutomatizira procese odvezivanja i brisanja, štedeći vrijeme i smanjujući ljudske pogreške.
  • Bolja kontrolaProgrameri imaju preciznu kontrolu nad time koji su zapisi pogođeni, što poboljšava integritet podataka.
  • Napredno filtriranjeParametar q omogućuje složene upite s više uvjeta, minimizirajući nepotrebne API pozive.
  • Pogodan za programereU potpunosti podržava asinkronu JavaScript sintaksu (async/await), što integraciju čini glatkom u VTAP okruženjima.

Vjerujemo da će ovi primjeri poboljšati vaše iskustvo s Vtiger CRM-om. Želimo osigurati da programeri i korisnici CRM-a mogu međusobno dijeliti informacije i znanje kako bi poboljšali funkcionalnost CRM-a. 

Pratite nas za više. Sretno kodiranje!

 
 

Prijavite se za primanje najnovijih ažuriranja!