0

Verarbeitung von großen JSON Objekten

Hallo zusammen, 

 

für einen Import / Update Dialog mit einem anderen CRM System muss ich manchmal große Mengen an JSON Daten (per CRM API)  verarbeiten. Es wird geprüft ob der Datensatz schon vorhanden ist und falls nicht, soll dieser geschrieben, mit verschiedenen Parametern gefüllt werden.

 

Die benötigt gerade über den Browser eine M;enge Zeit und bricht auch teilweise ab. Wie kann die optimiert werden. 

 

do as deferred - Funktioniert, es werden aber bei 2500 Datensätzen auch entsprechend 2500 Transactionen erstellt die dann mit der Zeit abgearbeitet werden.

 

function fetchAPI(entity : text,parameter : text) do
    let url := "https://xxxx/";
    let uri := url + entity + parameter;
    let headers := {
            Authorization: "Bearer " + getToken(),
            Accept: "application/json",
            'Content-Type': "application/json"
        };
    let response := do as server
            http("GET", uri, headers, {})
        end;
    if response.error then
        Log := text(response.error)
    end;
    response.result
end;
  if activeAPI() then
    let result := fetchAPI("opportunities", getVCAccout('VC ID'));
    if result.value then
        Log := now() + " " + result.cnt(value) + " Datensätze zu verarbeiten";
        let vcs := (select Verkaufschance);
        do as deferred
            for i in result.value do
                let idVC := first(vcs[VC = i.verkaufschancenid]);
                if not idVC then
                    do as transaction
                        let newImport := (create 'VC Import');
                        newImport.(VC := i.verkaufschancenid);
                        newImport.(Titel := i.name);
                        newImport.('VC Status' := number(i.statecode) + 1);
                        newImport.(Erstelldatum := i.createdon);
                        newImport.('Kuba VC ID' := i.opportunityid)
                    end
                end
            end
        end
    end
end

 

Copy

 

Wäre euch für eine Idee oder Optimierung dankbar.

Antwort

null

Content aside

  • vor 10 MonatenZuletzt aktiv
  • 38Ansichten
  • 1 Folge bereits