1c client subțire pentru întreprinderi. Publicații. Să ai un loc de muncă confortabil

25.01.2021 Programe

Una dintre caracteristicile frumoase ale tehnologiei 1C:Enterprise este că soluția de aplicație dezvoltată folosind tehnologia forme controlate, poate fi rulat atât într-un client subțire (executable) pentru Windows, Linux, MacOS X, cât și ca client web pentru 5 browsere - Chrome, Internet Explorer, Firefox, Safari, Edge și toate acestea - neschimbate cod sursa aplicatii. Mai mult, extern aplicația din clientul subțire și din browser funcționează și arată aproape identic.
Găsiți 10 diferențe (2 imagini sub tăietură):

Fereastra client subțire pe Linux:

Aceeași fereastră în clientul web (în browserul Chrome):

De ce am făcut un client web? Pentru a spune oarecum patetic, timpul ne-a pus o astfel de sarcină. Lucrul pe Internet a fost mult timp o condiție prealabilă pentru aplicațiile de afaceri. În primul rând, am adăugat posibilitatea de a lucra prin internet pentru clientul nostru subțire (unii dintre concurenții noștri, apropo, s-au oprit la asta; alții, dimpotrivă, au abandonat clientul subțire și s-au limitat la implementarea unui client web). Am decis să oferim utilizatorilor noștri posibilitatea de a alege opțiunea client care li se potrivește cel mai bine.

Adăugarea de capabilități bazate pe web la clientul subțire a fost un proiect mare, cu o schimbare completă în arhitectura client-server. Crearea unui client web este un proiect complet nou, pornind de la zero.

Formularea problemei

Deci, cerințele proiectului: clientul web trebuie să facă același lucru ca și client slab, și anume:
  1. Afișează interfața utilizator
  2. Executați codul client scris în limbajul 1C
Interfața cu utilizatorul din 1C este descrisă în editor vizual, dar declarativ, fără aranjarea pixel-cu-pixel a elementelor; Sunt utilizate aproximativ trei duzini de tipuri de elemente de interfață - butoane, câmpuri de introducere (text, numeric, dată/oră), liste, tabele, grafice etc.

Codul client în limbajul 1C poate conține apeluri de server, lucru cu resurse locale (fișiere, etc.), imprimare și multe altele.

Atât clientul subțire (când lucrează prin web) cât și clientul web folosesc același set de servicii web pentru a comunica cu serverul de aplicații 1C. Implementările clientului, desigur, sunt diferite - clientul subțire este scris în C++, clientul web este scris în JavaScript.

Puțină istorie

Proiectul de client web a început în 2006, cu o echipă de (în medie) 5 persoane. În anumite etape ale proiectului, dezvoltatorii au fost implicați pentru a implementa funcționalități specifice ( document foaie de calcul, diagrame etc.); de regulă, aceștia au fost aceiași dezvoltatori care au făcut această funcționalitate în clientul subțire. Acestea. dezvoltatorii au rescris componentele în JavaScript pe care le creaseră anterior în C++.

De la bun început, am respins ideea oricărei conversii automate (chiar parțiale) a codului clientului subțire C++ în client web JavaScript din cauza diferențelor conceptuale puternice dintre cele două limbi; clientul web a fost scris de la zero în JavaScript.

În primele iterații ale proiectului, clientul web a convertit codul clientului în limbajul 1C încorporat direct în JavaScript. Clientul subțire acționează diferit - codul din limbajul 1C încorporat este compilat în bytecode, iar apoi acest bytecode este interpretat pe client. Ulterior, clientul web a început să facă același lucru - în primul rând, a oferit un câștig de performanță, iar în al doilea rând, a făcut posibilă unificarea arhitecturii clienților subțiri și web.

Prima versiune a platformei 1C:Enterprise cu suport pentru client web a fost lansată în 2009. Clientul web la acel moment suporta 2 browsere - Internet Explorer și Firefox. Planurile inițiale includeau suport pentru Opera, dar din cauza unor probleme insurmontabile la acea vreme cu manipulatorii de închidere a aplicațiilor din Opera (nu a fost posibil să urmărim cu certitudine 100% că aplicația se închidea și în acel moment să se efectueze procedura de deconectare de la serverul de aplicații 1C) din aceste planuri a trebuit să fie abandonat.

Structura proiectului

În total, platforma 1C:Enterprise are 4 proiecte scrise în JavaScript:
  1. WebTools sunt biblioteci obișnuite utilizate de alte proiecte (includem și Biblioteca Google Closure aici).
  2. FormattedDocument Control
  3. Controlul planificatorului (implementat în JavaScript atât în ​​clientul subțire, cât și în clientul web)
  4. Client web
Structura fiecărui proiect seamănă cu structura proiectelor Java (sau proiecte .NET - oricare dintre acestea este mai apropiată); Avem spații de nume și fiecare spațiu de nume este într-un folder separat. În interiorul folderului există fișiere și clase de spații de nume. Există aproximativ 1000 de fișiere în proiectul client web.

Din punct de vedere structural, clientul web este în mare parte împărțit în următoarele subsisteme:

  • Interfață de aplicație client gestionată
    • Interfata generala a aplicatiei ( meniurile de sistem, panouri)
    • Interfața formularelor gestionate, incluzând, printre altele, aproximativ 30 de comenzi (butoane, Tipuri variate câmpuri de introducere - text, numeric, dată/ora etc., tabele, liste, grafice etc.)
  • Model de obiect disponibil pentru dezvoltatori pe client (peste 400 de tipuri în total: model de obiect de interfață gestionată, setări de aspect de date, stil condiționat etc.)
  • Interpret al limbajului 1C încorporat
  • Extensii de browser (utilizate pentru funcționalități care nu sunt acceptate în JavaScript)
    • Lucrul cu criptografie
    • Lucrul cu fișiere
    • Tehnologia componentelor externe, permițându-le să fie utilizate atât în ​​clienții subțiri, cât și în clienții web

Caracteristici de dezvoltare

Implementarea tuturor celor de mai sus în JavaScript nu este ușoară. Poate că clientul web 1C este una dintre cele mai mari aplicații la nivelul clientului scrise în JavaScript - aproximativ 450.000 de linii. Utilizăm în mod activ o abordare orientată pe obiect în codul clientului web, ceea ce simplifică lucrul cu un proiect atât de mare.

Pentru a minimiza dimensiunea codului client, am folosit mai întâi propriul nostru obfuscator, iar începând cu versiunea platformei 8.3.6 (octombrie 2014) am început să folosim Google Closure Compiler. Efectul utilizării în numere – dimensiunea cadrului clientului web după ofuscare:

  • Obfuscator propriu – 1556 kb
  • Google Closure Compiler – 1073 kb
Utilizarea Google Closure Compiler ne-a ajutat să îmbunătățim performanța clientului web cu 30% în comparație cu propriul nostru obfuscator. În plus, cantitatea de memorie consumată de aplicație a scăzut cu 15-25% (în funcție de browser).

Google Closure Compiler funcționează foarte bine cu codul orientat pe obiecte, astfel încât eficiența acestuia pentru clientul web este cât mai mare posibil. Closure Compiler face câteva lucruri bune pentru noi:

  • Verificarea tipului static la etapa de construire a proiectului (se asigură că acoperim codul cu adnotări JSDoc). Rezultatul este tastarea statică, foarte apropiată ca nivel de tastarea în C++. Acest lucru ajută la identificarea unui procent destul de mare de erori în etapa de compilare a proiectului.
  • Reducerea dimensiunii codului prin ofuscare
  • O serie de optimizări ale codului executat, de exemplu, cum ar fi:
    • substituții de funcție în linie. Apelarea unei funcții în JavaScript este o operație destul de costisitoare, iar substituțiile inline ale metodelor mici utilizate frecvent accelerează semnificativ codul.
    • Numărarea constantelor în timpul compilării. Dacă o expresie depinde de o constantă, valoarea actuală a constantei va fi substituită în ea
Folosim WebStorm ca mediu de dezvoltare a clientului web.

Pentru a analiza codul, folosim SonarQube, unde integrăm analizoare de cod statice. Folosind analizoare, monitorizăm degradarea calității codului sursă JavaScript și încercăm să o prevenim.

Ce probleme am rezolvat/rezolvam?

Pe parcursul implementării proiectului, am întâlnit o serie de probleme interesante pe care a trebuit să le rezolvăm.

Schimbați date cu serverul și între ferestre

Există situații în care înfundarea codului sursă poate interfera cu funcționarea sistemului. Codul extern codului executabil al clientului web, din cauza ofuscarii, poate avea nume de funcții și parametri care diferă de cele la care se așteaptă codul nostru executabil. Codul extern pentru noi este:
  • Cod care vine de la server sub formă de structuri de date
  • Cod pentru o altă fereastră de aplicație
Pentru a evita înfundarea atunci când interacționăm cu serverul, folosim eticheta @expose:

/** * @constructor * @extends (Base.SrvObject) */ Srv.Core.GenericException = function () ( /** * @type (string) * @expose */ this.descr; /** * @type (Srv.Core.GenericException) * @expose */ this.inner; /** * @type (șir) * @expose */ this.clsid; /** * @type (boolean) * @expose */ this. codificat;)
Și pentru a evita ofuscarea atunci când interacționăm cu alte ferestre, folosim așa-numitele interfețe exportate (interfețe în care sunt exportate toate metodele).

/** * Interfața de control DropDownWindow exportată * * @interface * @struct */ WebUI.IDropDownWindowExp = function()() /** * Mută ​​selecția înainte sau înapoi cu 1 * * @param (boolean) isForward * @param ( boolean ) checkOnly * @return (boolean) * @expose */ WebUI.IDropDownWindowExp.prototype.moveMarker = function (isForward, checkOnly)() /** * Mută ​​selecția la început sau la sfârșit * * @param (boolean) isFirst * @param (boolean) checkOnly * @return (boolean) * @expose */ WebUI.IDropDownWindowExp.prototype.moveMarkerTo = function (isFirst, checkOnly)() /** * @return (boolean) * @expose */ WebUI. IDropDownWindowExp.prototype .selectValue = funcție ()()

Am folosit Virtual DOM înainte de a deveni mainstream)

La fel ca toți dezvoltatorii care se ocupă de o interfață web complexă, am realizat rapid că DOM-ul nu este potrivit pentru a lucra cu dinamică. interfața cu utilizatorul. Aproape imediat, a fost implementat un analog al Virtual DOM pentru a optimiza lucrul cu UI. În timpul procesării evenimentului, toate modificările DOM sunt stocate în memorie și, numai când toate operațiunile sunt finalizate, modificările acumulate sunt aplicate arborelui DOM.

Optimizarea clientului web

Pentru ca clientul nostru web să funcționeze mai rapid, încercăm să folosim la maximum capabilitățile standard ale browserului (CSS, etc.). Astfel, panoul de comandă al formularului (situat pe aproape fiecare formă a aplicației) este redat exclusiv folosind instrumente de browser, folosind un aspect dinamic bazat pe CSS.

Testare

Pentru testarea funcțională și de performanță, folosim un instrument proprietar (scris în Java și C++), precum și o suită de teste construită pe Selenium.

Instrumentul nostru este universal - vă permite să testați aproape orice program cu ferestre și, prin urmare, este potrivit pentru testarea atât a unui client subțire, cât și a unui client web. Instrumentul înregistrează acțiunile utilizatorului care a lansat soluția de aplicație 1C într-un fișier script. În același timp, sunt înregistrate imagini ale zonei de lucru a ecranului - standarde. La monitorizarea noilor versiuni ale clientului web, scripturile sunt redate fără participarea utilizatorului. În cazurile în care captura de ecran nu se potrivește cu cea de referință la niciun pas, testul este considerat eșuat, după care un specialist în calitate efectuează o investigație pentru a determina dacă aceasta este o eroare sau o schimbare planificată a comportamentului sistemului. În cazul unui comportament planificat, standardele sunt înlocuite automat cu altele noi.

Instrumentul măsoară, de asemenea, performanța aplicației cu o precizie de până la 25 de milisecunde. În unele cazuri, buclă părți ale scriptului (de exemplu, repetând intrarea comenzii de mai multe ori) pentru a analiza degradarea timpului de execuție în timp. Rezultatele tuturor măsurătorilor sunt înregistrate într-un jurnal pentru analiză.


Instrumentul nostru de testare și aplicația în curs de testare

Instrumentul nostru și Selenium se completează reciproc; de exemplu, dacă un buton de pe unul dintre ecrane și-a schimbat locația, Selenium poate să nu urmărească acest lucru, dar instrumentul nostru va observa, deoarece face o comparație pixel cu pixel a capturii de ecran cu standardul. Instrumentul este, de asemenea, capabil să urmărească problemele cu procesarea intrărilor de la tastatură sau mouse, deoarece acesta este exact ceea ce reproduce.

Testele pe ambele instrumente (al nostru și Selenium) rulează scenarii de lucru tipice din soluțiile noastre de aplicație. Testele sunt lansate automat după construirea zilnică a platformei 1C:Enterprise. Dacă scripturile sunt mai lente (comparativ cu versiunea anterioară), investigăm și rezolvăm cauza încetinirii. Criteriul nostru este simplu - noua versiune nu ar trebui să funcționeze mai lent decât cea anterioară.

Dezvoltatorii folosesc diferite instrumente pentru a investiga incidentele de încetinire; folosit în principal Dynatrace AJAX Edition produs de DynaTrace. Se înregistrează jurnalele de execuție a operațiunii problematice pe build-urile anterioare și noi, apoi sunt analizate jurnalele. În același timp, timpul de execuție a operațiunilor individuale (în milisecunde) poate să nu fie un factor decisiv - procesele de servicii precum colectarea gunoiului sunt lansate periodic în browser, se pot suprapune cu timpul de execuție a funcțiilor și pot distorsiona imaginea. Parametrii mai relevanți în acest caz ar fi numărul de finalizați Instrucțiuni JavaScript, numărul de operații atomice pe DOM etc. Dacă numărul de instrucțiuni/operații din același script în versiune noua crescut - aceasta înseamnă aproape întotdeauna o scădere a performanței care trebuie corectată.

De asemenea, unul dintre motivele scăderii performanței poate fi faptul că Google Closure Compiler nu a putut, dintr-un anumit motiv, să efectueze înlocuirea în linie a funcției (de exemplu, deoarece funcția este recursivă sau virtuală). În acest caz, încercăm să corectăm situația prin rescrierea codului sursă.

Extensii de browser

Când o soluție de aplicație are nevoie de funcționalități care nu sunt disponibile în JavaScript, folosim extensii de browser:
  • pentru lucrul cu fișiere
  • pentru lucrul cu criptografie
  • lucrul cu componente externe
Extensiile noastre constau din două părți. Prima parte este ceea ce se numește extensie de browser (de obicei extensii pentru Chrome și Firefox scrise în JavaScript), care interacționează cu a doua parte - o extensie binară care implementează funcționalitatea de care avem nevoie. De menționat că scriem 3 versiuni de extensii binare - pentru Windows, Linux și MacOS. Extensia binară este furnizată ca parte a platformei 1C:Enterprise și se află pe serverul de aplicații 1C. Când este apelat pentru prima dată de la un client web, acesta este descărcat pe computerul client și instalat în browser.

Când rulează în Safari, extensiile noastre folosesc NPAPI; când rulează în Internet Explorer, folosesc tehnologia ActiveX. Microsoft Edge nu acceptă încă extensii, așa că clientul web din acesta funcționează cu restricții.

Dezvoltare în continuare

Una dintre sarcinile echipei de dezvoltare a clientului web este dezvoltarea în continuare a funcționalității. Funcționalitatea clientului web ar trebui să fie identică cu funcționalitatea clientului subțire; toate funcționalitățile noi sunt implementate simultan atât în ​​clientul subțire, cât și în clientul web.

Alte sarcini includ dezvoltarea arhitecturii, refactorizarea, îmbunătățirea performanței și a fiabilității. De exemplu, una dintre direcții este deplasarea în continuare către un model de lucru asincron. Unele dintre funcționalitățile clientului web sunt construite în prezent pe un model sincron de interacțiune cu serverul. Modelul asincron devine acum din ce în ce mai relevant în browsere (și nu numai în browsere), iar acest lucru ne obligă să modificăm clientul web prin înlocuirea apelurilor sincrone cu cele asincrone (și refactorizarea codului în consecință). Trecerea treptată la un model asincron se explică prin necesitatea de a sprijini soluțiile lansate și adaptarea treptată a acestora.

Etichete: Adăugați etichete

Începând cu versiunea 8.2, programul 1C a câștigat capacitatea de a funcționa în modul client subțire, care are funcționalități limitate. În ciuda faptului că a trecut destul de mult timp de la lansarea actualizării, un număr mare de utilizatori încă nu înțeleg pe deplin de ce este necesară această inovație, în ce situații este eficient de utilizat și care este diferența ei. În acest material vom vorbi în detaliu despre ce este clientul subțire 1C, avantajele și dezavantajele acestuia, precum și despre cum să lucrați cu acesta.

Ce este un „client subțire”?

Pentru a înțelege funcționalitatea acestui client de program, trebuie să înțelegeți de ce se numește „subțire”. Răspunsul la această întrebare este destul de simplu și este atât acest mod Lucrarea este foarte limitată în capacități în comparație cu versiunea „groasă”.

„clientul subțire” al aplicației are un set mai limitat de tipuri de limbaje încorporate, care este destinat exclusiv transferului de date și modificării acestora. Tot ceea ce este legat de lucrul cu baza de date este executat pe server în acest caz. Folosind această versiune a aplicației, este dezvoltată o interfață gestionată 1C, care vă permite să optimizați activitatea companiei.

„clienții subțiri” 1C sunt capabili să primească date gata făcute printr-o conexiune web, care a fost deja pregătită în prealabil pe partea de server.

În plus, utilizarea acestui tip de aplicație este posibilă folosind una dintre cele trei tehnologii:

  • Prin web (folosind o conexiune la Internet);
  • Prin protocol TCP/IP (tip client-server);
  • Direct cu baza de date.

conexiune internet

„clientul subțire” are capacitatea de a interacționa cu programul „1C: Enterprise” folosind o conexiune web la Internet. În acest caz, se lucrează cu un server web special configurat, folosind protocolul de transfer de date http. Cu toate acestea, serverul web însuși funcționează cu programul 1C: Enterprise prin protocolul TCP/IP sau direct.

Important: trebuie să utilizați unul dintre următoarele sisteme ca servere web:

  • Apache;

Conexiune client-server

În acest caz, clienții subțiri se conectează direct la servere folosind protocolul de transfer de date TCP/IP.

Conexiune directă la baza de date

În acest caz se întâmplă interacțiune directă client cu baza de date a aplicației. Pentru a organiza această schemă de lucru, pe computerul pe care este instalat clientul este creat un mediu special, care din punctul de vedere al programului este perceput ca un server. Pentru a-l organiza, trebuie să:

  • Descărcați fișierele server necesare pe computer;
  • Încărcați configurația aplicației.

Beneficiile unui client subțire

Dacă lăsăm tehnologia de proces deoparte și trecem la avantajele imediate pe care le oferă utilizarea acestei versiuni a clientului 1C, putem evidenția câteva avantaje serioase. Acestea includ:

  • Mobilitate;
  • Reducerea sarcinii pe canalul de comunicare;
  • Cerinte Minime de Sistem;
  • Reducerea costurilor companiei.

Mobilitate

Un „client subțire” hardware permite utilizatorului să fie oriunde în lume, atâta timp cât există o conexiune la Internet. De exemplu, să presupunem că șeful unui departament este în vacanță în străinătate. Pentru a lua orice decizie importantă, el trebuie să se familiarizeze cu cele mai recente date de raportare. Versiunea completa aplicațiile necesită o conexiune prin retea locala, motiv pentru care în acest caz „clientul subțire” vine în ajutor. Vă permite să lucrați cu baza de date cu o conexiune obișnuită la Internet.

Alt exemplu. Uneori, atunci când se efectuează tranzacții într-o sucursală care nu are conexiune la rețeaua locală, de exemplu, într-un depozit al companiei, este necesară descărcarea datelor din baza de date a depozitului pentru încărcarea ulterioară în departamentul de contabilitate.

Desigur, astfel de manipulări necesită timp și provoacă neplăceri. „clienții subțiri” sunt folosiți tocmai pentru a simplifica astfel de sarcini. Dacă aveți o conexiune web, puteți transfera cu ușurință date într-o bază de date comună 1C direct din depozit.

În plus, „clienții subțiri” folosesc un canal de rețea exclusiv pentru transferul de date. Versiunea completă a aplicației o folosește și pentru a transmite datele de serviciu necesare funcționării software, ceea ce reduce capacitatea utilă a canalului.

Astfel, „clienții subțiri” vă permit să lucrați în programul 1C unde nu există o conexiune web bună debitului.

Cerințe reduse de sistem

Situația este similară Cerințe de sistem programe. Pentru a rula versiunea completă, sunt necesare computere mai puternice, deoarece aplicația folosește procesorul și RAM sisteme. „Clienții subțiri” 1C sunt mult mai puțin pretențioși cu resurse calculator personal. Acesta este ceea ce îi permite să fie folosit chiar și pe sisteme slabe.

Reducerea costurilor companiei

Acest punct decurge din toate cele precedente. Datorită faptului că dezvoltarea unei interfețe gestionate vă permite să optimizați fluxul de lucru, să economisiți timp și resurse ale companiei, acest lucru duce la o reducere a costurilor totale ale companiei pentru contabilitate.

Dezavantajele clientului subțire

Desigur, fiecare monedă are un dezavantaj. „clientul subțire” are și unele inconveniente și limitări, care nu pot fi ignorate. Acestea includ:

  • Necesitatea unui server puternic;
  • funcționalitate limitată;
  • Interfață neobișnuită.

Necesită un server puternic

Dacă un număr mare de „clienți subțiri” interacționează cu serverul principal printr-o conexiune web, acesta va fi supus unei sarcini destul de mari, care impune anumite cerințe tehnice. Cu toate acestea, utilizarea versiunii complete a programului nu se încarcă mult mai puțin, așa că acest dezavantaj este foarte relativ.

Funcționalitate limitată

Așa cum sa menționat mai sus, versiune usoara Aplicația are o funcționalitate foarte limitată. De exemplu, nu este posibil să lucrați în modul „Configurator”.

Interfață

Acest dezavantaj dispare treptat în timp și odată cu lansarea actualizărilor, dar la început multe companii au refuzat să folosească „clienți subțiri” sau au încercat să-l evite tocmai pentru că interfața aplicației era extrem de incomodă și foarte diferită de versiunea completă.

Mulți utilizatori ai versiunilor noi de 1C se plâng muncă lentă forme controlate.

Se întâmplă să încetinească din cauza demenței computerului, dar uneori chiar și pe mașini destul de moderne și productive, 1C continuă să ne sugă sângele. Ei bine, cât de mult este posibil?

Există o ieșire! Se numește „Thin Client on Web Server”. Și nici măcar nu trebuie să vă actualizați hardware-ul, 1C va funcționa mult mai rapid pe computerele dvs. actuale.

Cu toate acestea, nu în toate cazurile poate fi folosit un client subțire.

Un client subțire nu te va ajuta dacă

  • Ai o configurație veche 1C, care deja funcționează rapid, de exemplu UT 10.3, Retail 1.0. Doar serverul 1C va ajuta aici și SQL Server sau server RDP.
  • Ai un singur computer. Dacă 1C este lent în ea, singura varianta- schimbați-l cu unul mai puternic sau actualizați-l.

Clientul subțire va accelera munca dacă

  • Aveți mai multe computere care funcționează în 1C prin rețea și aveți o configurație pe formulare gestionate: Trade Management 11, Retail 2, Integrated Automation 2.

Notă

  • Dacă aveți mai mult de 10 utilizatori, atunci o productivitate și mai mare poate fi obținută prin instalarea unei versiuni de server 1C și a unui server SQL în plus față de clientul subțire pe serverul web.

Avantajele lucrului în modul client subțire în comparație cu lucrul în rețea

  1. Viteză. 1C în modul client subțire funcționează de 2 ori mai rapid. Deoarece corpul principal de date este procesat pe server (calculatorul cu baza de date), iar computerul dvs. primește doar datele care trebuie afișate.
  2. Siguranță. Computerul client nu are acces direct la baza de date. Prin urmare, nu va fi posibil să furați baza. Nici măcar nu poți deschide configuratorul.
  3. Acces prin browser web. Puteți accesa baza de date prin Chrome / Mozilla.
    1. Pentru a vă conecta de oriunde, și nu doar de sub rețeaua locală, aveți nevoie de o adresă IP albă.

Pentru a opera 1C în modul client subțire, nu este nevoie să achiziționați licențe suplimentare. Fie Apache gratuit, fie serverul Windows IIS încorporat este folosit ca server web.

Trecerea la lucrul în modul client subțire se realizează în trei pași.

  1. Un server web este instalat pe unul dintre computere, de preferință mai puternic decât celelalte, iar 1C este configurat.
  2. Pe alte computere, sunt înregistrate noi căi către baza de date.
  3. Profit! 1C începe să funcționeze de 2 ori mai repede.

Notă! Accesul prin intermediul unui client subțire este posibil numai pentru bazele de date care acceptă lucrul în modul de formulare gestionate pe platforma 1C 8.2 și 8.3.

Exemple de configurații care acceptă lucrul în modul formulare gestionate:
Enterprise Accounting, versiunea 3.0 și o versiune ulterioară
Managementul salariului și al personalului, ediția 3.0 și superioară
Managementul comerțului 11.1 și o versiune ulterioară
Control firma mica, revizuirea 1.4 și o versiune ulterioară

Etapa 1. Publicarea bazei de date.

Pentru a vă conecta la baza de date în modul client subțire, trebuie să rulați publicarea bazei de date

Etapa 2. Instalarea și configurarea aplicației 1C:Enterprise 8. Client subțire

Descărcați gratuit aplicația client

Instalați aplicația după descărcare și rulare 1C Enterprise (client subțire).

Când îl porniți pentru prima dată 1C Enterprise (client subțire) va trebui să adauge o nouă bază de date la listă. Pentru a face acest lucru, faceți clic pe butonul „Adăugați”.

În fereastra pentru adăugarea unei baze de date care se deschide, specificați numele bazei de date (arbitrare) și selectați opțiunea de conectare - server web.

Lipiți linkul copiat în „ Specificați linia de adresă a bazei de informații". Dacă rețeaua dvs. folosește un server proxy, specificați parametrii acestuia, în caz contrar lăsați toate setările implicite și faceți clic pe butonul Mai departe.

În fereastra de setări a certificatului, lăsați toate valorile implicite - faceți clic Mai departe.

În fereastra Opțiuni de lansare, puteți lăsa setările implicite. Apoi faceți clic pe butonul Gata.

Baza de informații va apărea în lista de selecție a bazei de date. Pentru a lansa baza de date, faceți clic pe butonul 1C: Enterprise.

La pornirea bazei de date, în fereastra Acces la server web va trebui specificat Autentificarea și parola dvs. pentru serviciul 42 Cloud.

Apoi va apărea o fereastră Accesul la bazele de informații e - trebuie să vă alegeți utilizator în baza de date 1C.Notă: Implicit, utilizatorul Administrator este creat în bazele de date, fără parolă.

Când lansați baza de date pentru prima dată, vi se va pune întrebarea: „Sistemul a fost lansat fără a utiliza o licență hardware (cheie de protecție). ...Dezactivați utilizarea unei licențe hardware (cheie de securitate)?” (deoarece nu există acces direct de la PC-ul local la cheia de protecție hardware - cheia se află pe serverul 42 Cloud). Clic da pentru a accelera lansarea bazei de date.


După aceasta, baza de date 1C va fi lansată și veți putea lucra cu ea în modul client subțire.

Să ai un loc de muncă confortabil!

Principala diferență dintre clientul subțire și gros 1C este locul în care se efectuează principalele calcule - pe server sau la stația de lucru a utilizatorului. Acest lucru impune unele restricții cu privire la utilizarea uneia sau alteia opțiuni de lucru.

În acest articol al blogului Integrus ne vom uita la diverse aplicații client ale sistemului 1C - ce înseamnă un client subțire 1C, un client gros 1C, ce este și care sunt diferențele și, de asemenea, în ce cazuri ar fi mai bine pentru a folosi fiecare dintre ele.

Client gros 1C

Dacă utilizați 1C în modul client gros, aceasta înseamnă că toate operațiunile asupra datelor sunt efectuate direct la stația de lucru a utilizatorului, iar datele în sine sunt stocate pe server, unde aplicația client le accesează.

Un astfel de client poate îndeplini aproape toate funcțiile și poate lucra cu tipuri de aplicații date.

Clientul gros 1C este instalat din distribuția generală a sistemului, unde este listat ca o componentă separată. De asemenea, nu ar trebui să existe dificultăți cu întrebarea cum să lansați clientul gros 1C 8.3 - acesta este lansat de fișierul executabil 1cv8.exe.

Client subțire 1C

Lucrul în modul client subțire 1C înseamnă că pe server, pe lângă stocarea datelor, aproape tot codul de program, cererile sunt executate, fișierele temporare și un cache sunt stocate. La locul său de muncă, utilizatorul introduce doar datele inițiale și vede rezultatul afișat pe monitorul său.

Clientul subțire 1C este instalat din kitul de distribuție 1C. Dacă nu îl aveți, deoarece, de exemplu, lucrați cu cloud 1C și îl închiriați, atunci o distribuție separată poate fi descărcată pe site-ul web 1C. Asigurați-vă că versiunea sa se potrivește cu versiunea platformei pe care o utilizați.

Clientul subțire pentru 1C:Enterprise este lansat de la fisier executabil 1cv8c.exe.

Merită menționat separat faptul că pentru clientul subțire 1C 8.3 nu este recomandat modul de funcționare fișier; modul client-server este de preferat. Deși modul fișier este posibil, tot codul va fi executat pe computerul utilizatorului, ceea ce anulează toate beneficiile unui client subțire.

După cum puteți vedea, principala diferență dintre clienții subțiri și grosi 1C este locul în care se efectuează principalele calcule - pe server sau la stația de lucru a utilizatorului.

Acest lucru impune anumite restricții cu privire la utilizarea uneia sau alteia opțiuni de lucru:

  • o diferență importantă între clienții subțiri și cei grosi ai 1C - lucrul cu „Configuratorul” și consola de interogări este posibil doar în modul client gros
  • Clientul gros funcționează folosind protocolul TCP/IP, prin urmare, este destul de solicitant pe canalul de comunicație, deoarece funcționarea acestuia necesită schimbul de cantități relativ mari de informații cu serverul
  • Clientul subțire 1C funcționează exclusiv în modul de aplicație gestionată, funcționalitatea disponibilă utilizatorului este limitată în comparație cu funcționalitatea clientului gros, de exemplu, este imposibil să operați cu tipuri de date de aplicație
  • folosind un client subțire, este posibil să lucrați cu 1C prin Internet - clientul subțire se poate conecta la un server web prin http sau https
  • Clientul gros are un volum de distribuție destul de mare; pot apărea unele dificultăți cu instalarea și configurarea acestuia - este recomandabil să se ocupe de acest lucru un specialist calificat. În timp ce instalarea, configurarea clientului subțire 1C 8.3, conectarea bazei de informații pot fi realizate de orice utilizator mai mult sau mai puțin avansat.

Client web 1C

Client web 1C- în esență nu este cerere separată, ci mai degrabă o tehnologie care vă permite să lucrați în mediul familiar 1C folosind un browser, pur și simplu indicând adresa serverului web 1C corespunzător în bara de adrese. Pentru ca acesta să funcționeze, va trebui mai întâi să implementați un server web și să publicați pe el baza de informatii, de asemenea, clientul web va funcționa numai cu o configurație 1C care acceptă cerințele pentru un client subțire.

Lucrul bun despre clientul web este că nu trebuie să instalați absolut nimic pentru ca acesta să funcționeze pe dispozitivul utilizatorului; poate funcționa în toate cele mai comune browsere. Printre dezavantaje putem remarca funcționalitate limitatăși faptul că prezența unui server web nu îndeplinește întotdeauna cerințele de securitate a informațiilor.

Care este clientul 1C mai rapid, subțire sau gros?

Este dificil să răspunzi fără ambiguitate la întrebare: client 1C subțire sau gros, care este mai rapid? Depinde de condițiile de utilizare.

  • Clientul subțire are cerințe scăzute pentru dispozitivul utilizatorului și canalul de comunicare, în timp ce capacitățile sistemului sunt aproape pe deplin utilizate, cu toate acestea, munca se poate încetini dacă mulți angajați folosesc resursele serverului în același timp.
  • Un client gros poate necesita o putere semnificativă de la computerul utilizatorului și canal bun transferul de date, în timp ce oferă utilizatorului o anumită autonomie; activitatea sa nu este afectată de câte persoane lucrează cu sistemul în același timp, dacă există o conexiune la Internet etc.

Prin urmare, înainte de a selecta și configura un client 1C, este recomandabil să analizați cine și cum utilizează 1C în compania dvs. și de ce tipuri de clienți 1C veți avea nevoie.

  • Dacă acesta este un departament de contabilitate situat într-un birou, care poate fi prevăzut cu suficient calculatoare puterniceși este ușor să le organizați administrarea dacă toate aceste computere sunt conectate la o rețea locală - în acest caz, un client gros va fi mai convenabil.
  • Dacă angajații tăi trebuie să lucreze adesea de la distanță, prin internet, pentru că au deplasări de afaceri frecvente sau pur și simplu se află în alte orașe, pentru că aceasta este infrastructura companiei tale, dacă folosesc laptopuri de putere redusă sau alte dispozitive mobile, apoi configurarea unui client subțire 1C li se va potrivi.

Actualizarea clienților 1C

Și, în sfârșit, câteva cuvinte despre cum sunt actualizați clienții 1C:

  • Actualizările clientului subțire pot fi efectuate automat prin Internet,
  • actualizările pentru clientul gros trebuie descărcate de pe site-ul web 1C sau.

Dacă aveți întrebări despre alegerea unui client 1C, instalare, configurare, actualizare, administrare produse software 1C, puteți contacta specialiștii companiei Integrus sau vă uitați la secțiunea blogului companiei noastre cu instrucțiuni și recomandări pe teme 1C.