Baza znanja

  • Osnove
  • Prodaja
  • Upravljanje projektima
  • Podrška
  • Nabavka
  • Marketing
  • HR
  • Automotive
  • Website
  • Platforma
  • Klijentski portal
  • Developer
  • Problemi
  • Update instance
  • Setup
  • Struktura sajta
  • Page builder
  • Navigacija
  • Prodaja
  • Ulazni računi
  • Radna mesta
  • Tabulator mobilni HTML
  • Projekti
  • Katalog proizvoda
  • Cenovnici
  • Kalkulacija projekta
  • NoSQL Widget-i
  • CRM
  • Fleet
  • Zapošljavanje
  • Trebovanja
  • HR
  • Kontrolne table
  • Blog
  • Definicija templejta
  • Kontrolne table
  • Standardni templejti
  • Segmentacija
  • Predmeti
  • Podrška
  • Zaposleni
  • Narudžbine dobavljaču
  • Help Desk
  • Radni nalozi
  • Ponude
  • Narudžbine kupaca
  • Situacije
  • Baza znanja
  • Baza znanja nw
  • Evidencija prijema
  • Odsustva
  • Finansije
  • Subjekti i kontakti
  • News letter
  • Podešavanja
  • Integracije
  • Stored Procedures
  • Database
  • Editor
  • Transakcioni dokumenti
  • Kampanje
  • Onboarding
  • Tenderi
  • Fakturisanje
  • Nalozi za otpremu
  • Akvizicija
  • Operacije
  • Test
  • Osnovne definicije
  • Forme
  • Stored Procedures na klijentu
  • Cloudflare
  • Podešavanja procesa
  • SLA
  • Registracija
  • Brendovi
  • CMS settings
  • Komponente
  • Wrapper
  • Procedure za dokumenta
  • Dodavanje dashboarda
  • SQL
  • Osnovno
  • Pantheon
  • Wrapper
  • Jedinice mera
  • Help desk
  • Odsustva
  • Narudžbine
  • Kreiranje novog predmeta
  • Prodaja
  • Uvoz cenovnika
  • Istaknuti proizvodi
  • Postavke
  • SLA
  • Dugovanja
  • Flota
  • Flexi
  • Otvorene stavke
  • Podaci o organizaciji
  • Tipovi zahteva
  • Cenovnik transporta
  • Nabavka
  • Podaci
  • Dilerske ponude
  • Projektna ponuda
  • Poreske stope
  • Narudžbina
  • Komponente
  • Google
  • Workflow
  • NoSQL
  • Grafovi
  • Templejti
  • Tabele
  • Stilizacija
  • Atributi predmeta
  • Moj eRačun
  • Katalog prozvoda
  • Vrste proizvoda
  • Narudžbenice
  • Komunikacija
  • Avansi
  • Komunikacija
  • Cenovnik po skladištu
  • Templejti
  • Tipovi ugovora
  • Prodaja
  • Paketi podrške
  • Prijemi
  • Dokumenti
  • Fakture
  • Valute
  • Subjekti
  • Detaljan prikaz proizvoda
  • Postmark
  • Messaging
  • Code
  • Widgeti
  • Custom code
  • Pravila
  • Narodna banka Srbije
  • Korpa
  • Katalog proizvoda
  • Države
  • Projektne ponude
  • Zadaci
  • Izdavanja
  • Nabavka
  • Održavanje
  • Magacinski prenosi
  • Termini
  • Regioni
  • Ecommerce
  • InfoBiro
  • Resursi
  • NoSQL kontrolne table
  • Report
  • OpenAI
  • Nabavka
  • Poštanski brojevi
  • Aktivnosti
  • Osnovno
  • Upravljanje dokumentima
  • Kalkulacija utroška
  • Deobni modeli
  • Projekti
  • Infobip
  • Aktivnosti
  • JS Code
  • Portali
  • Skladišta
  • Api integracije
  • Plan realizacije
  • Analitika
  • Dupliranje predmeta
  • Web sajt
  • HR
  • Import predmeta
  • Predmeti
  • Email
  • Dizanje nove instance
  • Atributi
  • Fleet
  • Prodaja
  • Korisničke grupe
  • Podrška
  • New node
  • Registracija
  • Istorijat vozila
  • Nabavka vozila
  • Billing konfiguracije
  • Ponude
  • Leasing ugovori
  • Prodajna flota
  • Rent a car
  • Fontovi
  • Fiskalizacija
  • Zadovoljstvo klijenata (Customer satisfaction)
  • CSS Klase
  • Back office
  • Biblioteka
  • NoSQL Widget odvojen search na mobilnom
  • Struktura podataka
  • Ananas
  • Njuškalo
  • Kreiranje podataka
  • SQL
  • Front office
  • Kolačići (Cookies)
  • Tekstovi za ponudu
  • Flexi flota
  • MASTER ugovori
  • Ulazni računi
  • Flota
  • Templejti vozila
  • Servis
  • Štete
  • Fleet settings
  • Templejti guma
  • Fakturisanje
  • Klijentski ugovori
  • Brendovi
  • Flexi kalkulator
  • Marketing
  • Kreiranje formulara
  • Shopster
  • Dodatni loader
  • Meni
  • Templejti vozila
  • Brendovi
  • Tekstovi
  • Kazne
  • Deobni modeli
  • Prodaja
  • Kategorije vozila
  • Main.js
  • Kategorije vozila
  • Prikaz štete
  • Aaa
  • Subjekti
  • Kontakti
  • Predmeti
  • Tabulator mobilni HTML

    Standardni predložak (template) HTML koda za mobilni prikaz tabulatora se nalazi u predmetu HTML templates na Elastyc-u pod nazivom Tabulator Mobilni HTML template (acckey 25S01001440).


    `
    <div class="tabulator_mob_html">
        <div class="tabulator_mob_html_row tabulator_mob_html_header">
            <div class="tabulator_mob_html_wrap">
                <div class="tabulator_mob_html_cell tabulator_mob_html_cell_radnik">` + tabulatorMobileHTMLRadnikFormatter(data.Radnik_display, data.post_emplimg) + `</div>
                <div class="tabulator_mob_html_cell tabulator_mob_html_cell_status">` + tabulatorMobileHTMLStatusFormatter(data.oddelek, data.Status, data.Statusname) + `</div>
            </div>
            <div class="tabulator_mob_html_wrap tabulator_mob_html_wrap_koji_se_ne_skuplja">
                <div class="tabulator_mob_html_cell tabulator_mob_html_cell_followup">` + tabulatorMobileHTMLFollowupFormatter(data.Followup) + `</div>
                <div class="tabulator_mob_html_cell tabulator_mob_html_cell_pregled_subjekta">` + tabulatorMobileHTMLPregledSubjektaFormatter("", data.Client) + `</div>
            </div>
            <div class="tabulator_mob_html_wrap tabulator_mob_html_wrap_koji_se_ne_skuplja" style="display: none">
                <div class="tabulator_mob_html_cell tabulator_mob_html_datum">` + tabulatorMobileHTMLDatumFormatter(data.datum) + `</div>
            </div>        
        </div>
        <div class="tabulator_mob_html_row tabulator_mob_html_client_row">
            <div class="tabulator_mob_html_wrap">
                <div class="tabulator_mob_html_cell tabulator_mob_html_cell_client tabulator_mob_html_text_strong">` + data.field2 + `</div>
            </div>
        </div>
        <div class="tabulator_mob_html_row tabulator_mob_html_tags_row">
            <div class="tabulator_mob_html_wrap ">
                <div class="tabulator_mob_html_cell tabulator_mob_html_cell_tags">` + tabulatorMobileHTMLDecode(data.post_embeddescription) + `</div>
            </div>
        </div>
    </div>
    `

    Standardna polja

    Svaki predmet se sastoji od standardnih i prilagodjenih (custom) polja.
    U ovom HTML predlošku se nalaze standardna polja koja se koriste sa standardnim formaterima za mobilni prikaz Tabulatora.

    Standardna polja koja se koriste u HTML predlošku su:
    Radnik_display - naziv odgovorne osobe
    post_emplimg - slika odovorne osobe
    oddelek - šifra predmeta 
    Status - status predmeta
    Statusname - naziv statusa predmeta
    Followup - rok isporuke
    datum - datum kreiranja predmeta
    post_embeddescription - tagovi predmeta

    NoSQL query na podešavanju predmeta

    Polja koja je preporučeno uvek izvlačiti pored onih specifičnih su:
    "Acckey",
    "oddelek",
    "Statusname",
    "Status",
    "Client",
    "Client_name",
    "datum",
    "Followup",
    "Radnik",
    "Radnik_display",
    "post_emplimg",
    "post_embeddescription"
    ""post_id"
    .......

    Savet

    Po potrebi osvežiti NoSQL bazu!

    Standarni formateri i funckije

    Standardni formateri kojai se koriste u HTML predlošku su:
    - tabulatorMobileHTMLRadnikFormatter(radnik_display, post_emplimg) - formatira naziv i sliku odgovorne osobe i prikazuje sliku ako je ima, a ako nema inicijale.
    - tabulatorMobileHTMLStatusFormatter(oddelek, Status, Statusname) - formatira status i boji prikazuje ga u boji
    tabulatorMobileHTMLDatumFormatter(datum) - formatira datum
    tabulatorMobileHTMLFollowupFormatter(datum) - formatira rok isporuke
    tabulatorPregledSubjektaFormatter(cell, client) - kreira dugme koje otvara formu Subjekt pregled

    Napomena

    Kada se formater koristi za mobilni, cell parametar se prosleđuje prazan (""), dok se ostali parametri prosleđuju!

    Funkcija tabulatorMobileHTMLDecode(html) se koriste za dekodiranje enkodovanog HTML-a koji se prilikom elasticsearch inserta enkoduje.

    Standardne CSS klase

    Standardne klase koje mogu da se koriste u HTML-u za mobilni prikaz tabulatora su:
    tabulator_mob_html_wrap_koji_se_ne_skuplja - klasa koja se stavlja na element sa klasom tabulator_mob_html_wrap i ne dozvoljava da se taj element skupi, bez obzira na sirinu drugih elemenata
    - tabulator_mob_html_text_strong - klasa koja se stavlja na element sa klasom tabulator_mob_html_cell i bolduje tekst

    JavaScript kod

    U JS kodu treba obratiti pažnju na par bitnih stvari:

    Da postoji varijabla isMobile:

    var isMobile = windowWidth <= 992

    Da ako postoji soritranje tabele, da se osigura da se primenjuje samo za web varijantu tabele:

    if (!isMobile) {
    table.on("dataSorted", function (sorters) {
    // ...
            });
        }

    Primer JS koda

    function buld_table_nosql_tabulator(jsonnew2) {
    var sort_column = Object.keys(query_current["sort"][0])[0]
    var sort_column1 = sort_column.replace(/.keyword/, "")
    var sort_dir = query_current["sort"][0][sort_column]["order"]

    var isMobile = windowWidth <= 992

    var options = {
            height: window.innerWidth > 992 ? tableHeight + "px" : "100%",
            data: jsonnew2,
            columnHeaderSortMulti: false,
            initialSort: [{
                column: sort_column1,
                dir: sort_dir
            }],
            placeholder: "No Data Set",
            layout: window.innerWidth < 911 ? "fitColumns" : "fitColumns",
            scrollHorizontal: window.innerWidth < 911 ? "true" : "false",
            responsiveLayout: "collapse",
            sortMode: "remote",

            columns: windowWidth > 992 ? [
    //web
                    {
                        title: "",
                        field: "",
                        sorter: "string",
                        visible: true,
                        formatter: subjektEditFormatter,
                        width: 40
                    },
    // ...
    ]
    :
    [
    // mobilni - OBAVEZNO mora da stoji jedna placeholder kolona da bi rowFormatter radio
                    {
                    title: "",
                    field: "placeholder",
                    visible: false
                    },
    ],
            rowFormatter: isMobile ? function (row) {
    var data = row.getData();
    console.log(data)
    var html = `
                            <div class="tabulator_mob_html">
                                <div class="tabulator_mob_html_row tabulator_mob_html_header">
                                    <div class="tabulator_mob_html_wrap">
                                        <div class="tabulator_mob_html_cell tabulator_mob_html_cell_radnik">` + tabulatorMobileHTMLRadnikFormatter(data.Radnik_display, data.post_emplimg) + `</div>
                                        <div class="tabulator_mob_html_cell tabulator_mob_html_cell_status">` + tabulatorMobileHTMLStatusFormatter(data.oddelek, data.Status, data.Statusname) + `</div>
                                    </div>
                                    <div class="tabulator_mob_html_wrap tabulator_mob_html_wrap_koji_se_ne_skuplja">
                                        <div class="tabulator_mob_html_cell tabulator_mob_html_cell_followup">` + tabulatorMobileHTMLFollowupFormatter(data.Followup) + `</div>
                <div class="tabulator_mob_html_cell tabulator_mob_html_cell_pregled_subjekta">` + tabulatorMobileHTMLPregledSubjektaFormatter("", data.Client) + `</div>
                                    </div>
                                    <div class="tabulator_mob_html_wrap tabulator_mob_html_wrap_koji_se_ne_skuplja" style="display: none">
                                        <div class="tabulator_mob_html_cell tabulator_mob_html_datum">` + tabulatorMobileHTMLDatumFormatter(data.datum) + `</div>
                                    </div>        
                                </div>
                                <div class="tabulator_mob_html_row tabulator_mob_html_client_row">
                                    <div class="tabulator_mob_html_wrap">
                                        <div class="tabulator_mob_html_cell tabulator_mob_html_cell_client tabulator_mob_html_text_strong">` + data.field2 + `</div>
                                    </div>
                                </div>
                                <div class="tabulator_mob_html_row tabulator_mob_html_tags_row">
                                    <div class="tabulator_mob_html_wrap ">
                                        <div class="tabulator_mob_html_cell tabulator_mob_html_cell_tags">` + tabulatorMobileHTMLDecode(data.post_embeddescription) + `</div>
                                    </div>
                                </div>
                            </div>
                        `;
    row.getElement().innerHTML = html;
            } : undefined,
        };

    var table = new Tabulator("#nosql_tabulator", options);
    nosql_tabulator = table

    var handleRowClick = function (e, row) {
    // ...
        };

    table.on("rowClick", handleRowClick);

    $("#nosql_tabulator").attr("init", "T")

    table.on("tableBuilt", function () {
    // ...
        });

    if (!isMobile) {
    table.on("dataSorted", function (sorters) {
    // ...
            });
        }


    table.on("scrollVertical", function (top) {
    // ...
        })
    }
    Saznajte više