Programarea (și programele de afaceri) se ocupă, de obicei, cu următoarele tipuri simple de date: număr, șir, dată. Valorile acestor tipuri pentru diferite țări, standarde și obiceiuri simple pot avea reprezentări diferite.
Probabil cel mai faimos exemplu, aceasta este o altă reprezentare a timpului - în Rusia se obișnuiește să se folosească ora 9:00 și ora 21:00, iar în țările vorbitoare de limba engleză 9am și 9pm. Diferența în logică (sistem de 12 ore sau 24 de ore) și în scris.
Reprezentarea valorii se numește "format", iar astăzi vom discuta modificarea formatului datei și formatului numărului în 1C.
Puteți utiliza formatul ca programator în 1C sau vizual, fără programare, de exemplu atunci când creați un formular tipărit sau un raport, atunci când configurați elemente în formular.
Ce este formatarea?
Numărul și data, indiferent dacă sunt prezentate pe ecran sau pe presă - rămân în sine. Formatarea implică numai conversia la o valoare de șir - adică, cum va "arăta" pe ecranul calculatorului sau pe hârtie.
Principalele diferențe între formatele 1C reprezentarea numerelor și a datelor:
- Număr de
o "." sau "," pentru separarea părții fracționare
o număr de zecimale
o gruparea cifrelor într-un număr de 3 (1 000 000, nu 1000000) - Data și ora
o ordinea anului, a lunii, a zilei
o caracter separator
o Format de timp 1C (12 sau 24 de ore)
o detalii despre scriere.
De asemenea, în formatul 1C, se poate specifica o "comoditate" suplimentară, de exemplu, numerele negative afișate în roșu sau o reprezentare "valoare necompletată" în forma "0" sau "necompletată".
Formatarea implicită funcționează, de exemplu, atunci când traduceți un număr într-un șir. În unele cazuri, aceste setări pot servi ca un serviciu rău în care programatorul nu se așteaptă la acest lucru.
De exemplu, atunci când traducem un număr într-un șir, acesta este tradus ținând cont de gruparea cifrelor (așteptați acest lucru?):
Numărul String = SokrLP (2400); // va fi egal cu "2 400"
Pentru a specifica formatul exact în limba 1C, există funcția Format (), cu care puteți specifica reprezentarea necesară.
NumberString = Format (2400, "Setări")
Ca linie "Setări", trebuie să specificați formatul necesar pentru 1C. Aceste setări sunt indicate într-o formă codată specială. Luați în considerare cele mai frecvent utilizate setări:
Formatul 1C de dată și număr în mod prestabilit
Dacă aveți nevoie să afișați o dată sau un număr și nu doriți să vă faceți griji cu privire la modul în care acestea ar trebui prezentate în conformitate cu regulile țării de care aveți nevoie, există cea mai simplă setare care vă va permite să faceți acest lucru:
Deoarece nu este greu de văzut, numele țărilor sunt intuitive.
Formatul datei în limba 1C
Dacă setările implicite nu sunt suficiente pentru dvs. și doriți să specificați ordinea părților datei și a simbolurilor separării acestora, trebuie să utilizați setarea:
ДФ = "дмг чмс"
În consecință, "dmg" este o zi, o lună și un an, iar "chms" înseamnă ore, minute și secunde. Oricare dintre aceste părți poate fi omisă. Secvența este oricare. Simbolurile indicate între părți vor fi folosite ca simboluri de divizare.
Simbolul părții de dată poate fi specificat de mai multe ori la rând, ceea ce determină apariția acestei părți a datei, de exemplu "d" sau "dd" sau "dddd".
Decodarea părților datei:
- d - zi
o mică "d"
o poate fi specificat de la 1 la 4 ori - M - luna
o mare "M"
o poate fi specificat de la 1 la 4 ori - y - an
o mică "g"
o poate fi specificat 1 sau 2 sau 4 ori - h - ore
o mică "h" - format de 12 ore
o mare "H" - format de 24 de ore
o pot fi specificate de 1 sau 2 ori - m - minut
o mică "m"
o pot fi specificate de 1 sau 2 ori - sec - secunde
o mică "c"
o pot fi specificate de 1 sau 2 ori - vв - Afișaj AM / PM pentru format de 12 ore
- k - trimestru.
Formatul numărului în limba 1C
Spre deosebire de formatarea datei, în cazul în care totul este destul de simplu, există mulți parametri pentru formatarea numărului. Vom lua în considerare cele care ne-au părut utile - adică, în opinia noastră, ele sunt adesea folosite.
Prima "problemă" este legată de gruparea în mod prestabilit a numerelor cu numere de 3 și gruparea grupurilor cu un spațiu, de exemplu:
СтрЧисло = Șir (22300500)
> 22 300 500
Acest lucru este incomod atunci când numărul este convertit într-un șir nu pentru o ieșire frumoasă și ușor de înțeles pentru utilizator, ci pentru nevoile de serviciu. Acest lucru poate fi afectat de parametrul "FH", de exemplu:
Format (22300500, "FH = 100")
> 22300500 // toate nivelele au fost eliminate
Format (22300500, "FH = 6")
> 22 300500 // grupa doar milioane
Parametru care permite rotunjirea numărului la ieșirea la numărul dorit de cifre după punctul zecimal "BHC":
Format (3.535353, "BHC =" "2" ")
> 3,54
Un parametru care vă permite să specificați caracterul separator al părții întregi și fracționare a "CRD":
Format (3.535353, "CRD =" "." "")
> 3,535353
În unele cazuri, poate fi util să puteți afișa altceva în locul numărului "0": un șir gol sau "nu este completat". Acest lucru vă permite să faceți parametrul "CHN":
Formatul câmpului 1C din formular
Am analizat cu dvs. tehnici care permit programatorului să formateze valoarea în limba 1C. De asemenea, există mecanisme care vă permit să specificați formatul dorit vizual, fără programare.
De exemplu, utilizatorul lucrează cu un formular. Pe formular există un câmp care afișează data. Putem influența prezentarea acestei date.
Deschideți proprietățile acestui câmp. Pentru a face acest lucru, într-un client gros, faceți clic cu butonul din dreapta pe câmp și în clientul subțire, faceți clic cu butonul din dreapta pe numele câmpului din lista de câmpuri, apoi faceți clic pe Proprietăți.
Câmpul are o proprietate "Format".
Faceți clic pe butonul "..." pentru al configura. Pentru a seta formatul datei, utilizați fila Data (pentru număr - fila Număr). Puteți selecta formatul dorit din listă.
Formați-1C a celulei în formă tipărită
Când trebuie să dezvoltați un formular tipărit (raportați sau imprimați un document), puteți atribui formatul celulei exact în același mod ca și pentru câmpul documentului.
Selectăm o celulă (sau mai multe celule în același timp), mergeți la proprietăți, proprietatea "Format", selectați formatul dorit.
Format 1С în SKD
Rapoartele SKD vă permit să configurați formatul 1C ca programator (în momentul rapoartelor) și utilizatorul (când utilizați raportul). De asemenea, posibilitățile se datorează mai mult utilizării formării condiționale.
Aceasta înseamnă că nu numai că specificați câmpul de formatat, dar și ce condiție (de exemplu, dacă valoarea câmpului este negativă).
În modul Enterprise, selectați elementul de meniu din formularul de raport "Varianta schimbării". În raportul ACS din clientul gros, acest element se află în meniul "Acțiuni / Setări".
În forma deschisă a tuturor setărilor SKD există o filă "Formatare condiționată". Adăugați o linie nouă. Există trei coloane în linie:
- Clearance-ul. Specificați formatul dorit pentru 1C - font, fundal sau text, format 1C pentru afișarea numărului și datei
- Stare. Dacă aplicați întotdeauna acest design, lăsați acest câmp gol. În caz contrar, specificați câmpul și valoarea acestuia. Apoi, formatarea va fi aplicată numai în acele linii în care aceste valori coincid. Dacă doriți să specificați simultan valorile mai multor câmpuri și condițiile "și / sau" - adăugați un grup și grupați câmpurile utilizând grupuri.
- Câmpuri executabile. Lista câmpurilor pentru care se va aplica formatarea.
Formatul 1C în forme controlate
Reguli de formatare similare funcționează în orice formă a listei de clienți gestionați. În formularul listă, selectați elementul de meniu "Toate acțiunile / lista de configurare".
Fila Design Conditional.
Alegem designul și formatul dorit.
Specificați lista câmpurilor la care va fi aplicat acest design.