Ole în întreprinderea 1s

O instrucțiune mică cu exemple - cum să lucrați cu OLE

O scurtă referire la utilizarea OLE în 1C-Enterprise.

Pentru a porni sistemul de 1C-Enterprise ca un server OLE de automatizare dintr-o aplicație externă, următoarea secvență de acțiuni:







  1. Se creează un obiect cu identificator OLE (insensibil pentru caractere):
    • V1CEnterprise.Application - cheie independentă de versiune;
    • V77.Aplicație - cheie dependentă de versiune;
    • V77S.Application - cheie dependentă de versiune, versiune SQL;
    • V77L.Application - cheie dependentă de versiune, versiune locală;
    • V77M.Application - cheie dependentă de versiune, versiune de rețea.
  2. Initializarea sistemului 1C-Enterprise se face folosind metoda Initialize ().
  3. Atributele și metodele sistemului 1C-Enterprise sunt denumite serverul de automatizare OLE.

1C-Enterprise ca server de automatizare OLE are 4 metode:

  • Initialize () - efectuați inițializarea sistemului 1C-Enterprise.
  • CreateObject () - Creează un obiect de date agregat al datelor 1C-Enterprise și returnează o referință la acesta.
  • EvalExpr () - Evaluați expresia sistemului 1C-Enterprise.
  • ExecuteBatch () - Executați o secvență de operatori ai sistemului 1C-Enterprise.

1. Initializeaza () - deschide baza de date.

Sintaxa metodei este:

Inițializați (<Имя объекта>.RMTrade, <Командная строка>, <Пустая строка>)

<Имя объекта>.RMTrade este numele variabilei și cuvântul-cheie RMTrade.
<Командная строка> - linie de comandă, în care puteți înregistra calea către baza de date, parola utilizatorului și parola.
<Пустая строка>) - fie un șir gol, fie "NO_SPLASH_SHOW" - pentru a nu afișa ecranul de pornire la pornire.







Pentru a deschide baza de date prin OLE - este necesar să creați un obiect cu ID-ul OLE, să efectuați inițializarea bazei de date și să verificați succesul inițializării. În exemplul meu, nu precizez parametrii suplimentari, așa că fereastra pătrată a selecției de bază este deschisă, se sugerează selectarea utilizatorului și introducerea parolei.

2. CreateObject () - crea un obiect de tip agregat.

Această metodă creează un obiect de date agregat al sistemului 1C-Enterprise și returnează o referință la acesta.

Sintaxa metodei este:

<ИмяАгрегатногоТипа> - O expresie de șir a cărei valoare conține numele tipului de date agregat specificat în configurator. De exemplu: "Nomenclatorul directorului", "Dokument.PribhodnayaNakladnaya".

3. EvalExpr () - evaluați expresia.

Sintaxa metodei este:

<СтрокаВыражения> - O expresie de șir scrisă în limbajul built-in 1C-Enterprise.

Rezultatul unei expresii poate fi un număr, un șir, o dată sau o valoare a unui tip de date agregat. Rezultatul cu un tip nedefinit este convertit la un tip de șir.

4. ExecuteBatch () - executați o secvență de instrucțiuni.

Sintaxa metodei este:

<СтрокаОператоров> - șir de caractere, textul programului în limbajul încorporat 1C-enterprise.

Returnează valoarea tipului logic: TRUE dacă succesiunea de declarații este de succes, FALSE, dacă nu. În automatizarea OLE, TRUE și FALSE au valori -1 (minus unul) și respectiv 0.

Exemplu: crearea unui document într-o altă bază de date deschisă prin OLE.

Descărcarea provine din procesare. Selectați documentul - un document selectat de utilizator pentru a încărca o altă bază de date.

Acest exemplu este de lucru 100%. Îl folosesc pentru a încărca documente dintr-o configurație în alta.

Comparație în baza de date OLE. Constante, enumerări, elemente de directoare.

Pentru a compara valorile tipurilor de date agregate într-o bază de date deschisă de Ole, folosiți algoritmul standard cu utilizarea semnelor egale și inegale (=,<>) nu funcționează. Rezultatul este simplu. Este necesar să treceți de la compararea tipurilor de date agregate cu tipurile de date simple - data, șirul și numărul.

Prin urmare, concluzia: nu comparăm elementele în sine, ci atributele lor unice. De exemplu, pentru intrările de directoare, acesta este codul (dacă există) sau numele. Pentru enumerare, utilizați metoda Identifier (). Iată două exemple:







Trimiteți-le prietenilor: