Hogyan lehet programozottan kirakni 1-ről excelre. Adatok feltöltése Excelbe különböző paraméterek beállításával. Két fő követelménynek kell megfelelni

Nagyon gyakran szükséges az adatok beszerzése az 1C 8.3-ból, és az információkat külső fájlba menteni, más szóval az 1C vállalatból való feltöltéshez. A feladat szinte mindig megvalósítható az 1C programozók bevonása nélkül.

Fontolja meg számos hasznos tippet, amelyek segítségével adatokat tölthet fel az 1C-ből egy külső információs rendszerbe.

Az 1C-ben számos módszer létezik, amellyel szakértők bevonása nélkül szerezhet információkat:

  • A teljes adatbázis eltávolítása az 1C 8.3-ból - későbbi letöltéshez egy másik számítógépre
  • A jelentések és a nyomtatható anyagok mentése Excel, Word vagy PDF formátumba
  • Kirakodó asztalok 1C-ből
  • Információszerzés a Query Console használatával

Bővebben róluk:

A teljes adatbázis eltávolítása 1s 8.3-ból (.dt fájlba)

Ehhez be kell lépnie a konfigurátor módba, majd a főmenüben válassza az "Adminisztráció" - "Információsbázis feltöltése" elemet:

Ezután már csak a jövőbeli fájl nevét és helyét a lemezen kell megadnia.

Másik adatbázisba való utólagos feltöltéshez kattintson az „Infóbázis feltöltése” gombra, és válassza ki a korábban feltöltött fájlt.

Jelentések és nyomtatható anyagok kirakása 1C-ből Excelbe

Ez a módszer univerzális és nagyon egyszerű. Ehhez elég, ha megnyit egy nyomtatható űrlapot vagy jelentést.

Például nyissa meg a TORG 12 nyomtatható fájlt, nyomja le a ctrl+S billentyűkombinációt (vagy a Fájl - Mentés másként menüben), és válassza ki a fájl típusát és nevét:

Ugyanaz a rendszer működik - a jelentés két kattintással töltődik ki:

Ingyenes 267 1C videóleckéket kaphat:

Mentés lehetséges a fő formátumokba - excel, word, pdf, html, txt stb.

Kirakodó asztalok 1C-ből 8.3

Gyakran vannak olyan banális feladatok, mint „kérjen egy listát az aktuális év kifizetéseiről”, „kirakjon egy vásárlási vagy eladási könyvet”, vagy „kirakjon árut a 256-os számláról”. Az ilyen problémák megoldása meglehetősen egyszerű.

Például meg kell kapnom az összes nyugtát a "Vector" partnertől, amelynek összege meghaladja az 1000-et. Nyissuk meg a lista űrlapot, és állítsuk be a listában a szükséges szűrőket:

A rendszer felajánl egy kimeneti lehetőséget - táblázatos dokumentumhoz vagy szöveges dokumentumhoz kiválasztunk egy táblázatot. Az 1C program információkat jelenít meg egy ilyen táblázatos dokumentumban, amely a jelentésekhez hasonlóan a szükséges formátumban menthető:

Hasonló műveletek végrehajthatók az 1C 8.2 szinte bármelyik táblázatos részében. Például fel kellett töltenünk egy árulistát a МСК00003 számú bizonylatról, nem probléma. Ez nagyon egyszerűen megtörténik - nyissa meg a dokumentumot, hívja a helyi menüt, és néhány kattintás után megkapjuk a kívánt feltöltést a kívánt formátumban:


Tranzakciós napló feltöltése 1C-ből Excelbe:

Információszerzés a Query Console használatával

Azonban nem minden információ található az 1C 8.2 egyszerű táblázatos részében. Néha több adatforrásból kell adatokat gyűjtenie, egyes mezőkkel összekötni őket.

Ez a módszer olyan technikás emberek számára alkalmas, akik ismerik a lekérdezési nyelv alapjait. Ez abból áll, hogy lekérjük a lekérdezés eredményét, és elmentjük a szükséges formátumban.

Például meg kell kapni minden vállalkozót-beszállítót és telefonszámát. Ehhez írja be a következő lekérdezést:

Az eredményül kapott táblázat a kívánt fájlformátumba is feltölthető:

A fogadott adatokat feltöltheti egy másik 1C adatbázisba a "" használatával. Nézze meg a videós utasítást a nómenklatúra példáján:

Például alkossunk Forgalmi mérleg (Jelentések - Standard - Mérleg).

Adja meg a mappát - hová mentse a dokumentumot, állítsa be a fájl nevét és válassza ki FájltípusExcel munkalap (*.xls) vagy Excel2007-…(*.xlsx) munkalap az Excel különböző verziói. Mindkét formátumban elmentheti, és megtudhatja, melyik a legmegfelelőbb. Mentéskor más fájlformátumok is elérhetők. Megnyomjuk a gombot Megment .

Példánkban a mappát választottuk ki Dokumentumok az 1C-ből és állítsa be a fájl nevét - OSV 9 hónapig. Például különböző Excel formátumokba mentünk.


Mentés után a dokumentumok a megadott mappába kerülnek.

Mindkét fájl megnyílik, tk. a dokumentumok korábbi verzióit a programok újabb verziói támogatják.

Hogyan menthetünk el egy dokumentumot Excelben 1C-ben

Fontolja meg a megtakarítást egy dokumentum példáján Fizetési felszólítás . Alakítsuk ki a nyomtatási formáját, és az eszköztár gombjai között látunk egy hajlékonylemezes gombot.

Ha rákattint, megnyílik a dokumentum mentésére szolgáló ablak, ahol megadjuk a mappát - hova kell menteni, és kiválasztjuk a kívánt formátumot. A mi esetünkben ez Microsoft Excel munkalap. Állítsa be a jelölőnégyzetet, és kattintson a gombra Kész. A dokumentum egy mappába kerül mentésre.

Táblázatok feltöltése 1C-ből Excelbe

Néha szükségessé válik egy lista összeállítása a dokumentumnaplók, címtárak stb. táblázatos részeiből. Ebben az esetben beállíthatja a szükséges elemek kiválasztását (dátum, partner neve). Vegyünk egy példát.

Szeretnénk felsorolni Fizetési megbízások időszak adó- és járulékfizetésére.

A dokumentumok kiválasztásához a gomb nyomva tartásával kiemelheti azokat ctrl vagy Váltás, valamint a sorok csoportjának kiválasztásához használja a gombot. Ezután megnyomjuk a gombot Többés válassz csapatot Lista megjelenítése .

A megnyíló ablakban beállítjuk, hogy mely oszlopokat kell megjelenítenünk, és kiválasztjuk a - megjelenítést táblázatos dokumentum . Ha a listában kiválasztottunk egy sorcsoportot, akkor jelölje be a - megjelenítés jelölőnégyzetet Csak kiválasztott . Kattintson rendbenés kész a lista.

Ez így néz ki.

Az eredményül kapott jelentés bármilyen formátumban menthető, beleértve Excel - *.xls. Ehhez (a fent leírtak szerint) válassza ki a parancsot Megment(vagy Mentés másként ) a menün Fájlés állítsa be a paramétereket.

Ezek a műveletek az 1C program bármely listájával végrehajthatók.

Ha nagy listákkal dolgozik, például egy könyvtárat Elnevezéstan , további kiválasztást és csoportosítást végezhet, beállíthatja az adatok rendezési sorrendjét.

Ezért, mielőtt bármilyen listát hozna létre, figyeljen a parancsra Lista testreszabása gombban Több .

A táblázatcellaadatok mentése 1C-ből Excelbe

Néha ki kell másolnunk bizonyos adatokat egy jelentésből vagy dokumentumból. Ezt egyszerű másolással lehet megtenni. Ehhez jelöljön ki néhányat a kívánt cellák közül, és kattintson a jobb gombbal, válassza ki a parancsot Másolat(vagy ctrl+c).

A programra való belépéssel excel parancs segítségével Beszúrás, adja hozzá a másolt töredéket a táblázathoz. Ez a módszer az 1C összes adatával működik, mind a generált táblákban, mind az űrlapcellákban - könyvtárakban, folyóiratokban, dokumentumokban.

Segített a cikk?

Szerezzen még egy titkos bónuszt és teljes hozzáférést a BuhExpert8 súgórendszerhez 14 napig ingyen

Ez a módszer egyszerű. Lényege, hogy a tárgy SpreadsheetDocument módszerei vannak:

  • éget (< ИмяФайла>, < ТипФайлаТаблицы >) adatok fájlba feltöltése;
  • Olvas (< ИмяФайла>, < СпособЧтенияЗначений >) adatok betöltéséhez egy fájlból.

Figyelem!

A Write() metódus elérhető mind a kliensen, mind a szerveren. A Read() metódus csak a szerver oldalon érhető el. Ezt emlékezni kell
a kliens-szerver interakció tervezésekor.

Vegyünk egy példát egy táblázatkezelő dokumentum fájlba mentésére. A TableDocument objektumot bármilyen módon létre kell hozni és kitölteni, ill kirakodás A fájl csak egy sorból készül:

TabDoc . Write(FilePath, SpreadsheetDocumentFileType.XLSX);

Itt TabDoc- generált táblázat, A fájl elérési útja- a feltöltendő fájl neve, SpreadsheetDocumentFileType.XLSX— a generált fájl formátuma. A következő Excel formátumok támogatottak:

  • XLS95 - Excel 95 formátum;
  • XLS97 - Excel 97 formátum;
  • Az XLSX egy Excel 2007 formátum.

TabDoc = New SpreadsheetDocument;
TabDoc . Read(PathToFile, WayToReadSpreadsheetDocumentValues.Value);

Itt A fájl elérési útja- A letöltött Excel fájl elérési útja. WayToReadValuesSpreadDocument.Value meghatározza, hogyan kell értelmezni a forrásdokumentumból kiolvasott adatokat. Választható lehetőségek:

  • Jelentés;
  • Szöveg.

Csere OLE-n keresztül

Az OLE automatizálási technológián keresztüli csere talán a leggyakoribb lehetőség az Excel-fájlok programozott munkavégzésére. Lehetővé teszi az Excel által biztosított összes funkció használatát, de lassabb, mint más módszerek. Az OLE-n keresztüli cseréhez az MS Excel telepítése szükséges:

  • A végfelhasználó számítógépén, ha a csere a kliens oldalon történik;
  • Az 1C:Enterprise szerver számítógépen, ha a csere a szerver oldalon történik.

Példa kirakodás:

// Hozzon létre egy COM objektumot
Excel = Új COMObject("Excel.Application");
// Figyelmeztetések és kérdések letiltása
Excel . displayalerts = false;
// Hozzon létre egy új könyvet
Könyv = Excel. munkafüzetek. add();
// Elhelyezés az első lapon
Lap = Könyv. Munkalapok (1);

// Érték írása a cellába
Lap . Cellák (Sorszám, Oszlopszám). Érték = CellValue;

// Mentse el a fájlt
Könyv . SaveAs(Fájlnév);


Excel . Kilépés();
Excel = 0;

Példák olvasás:

// -- 1.OPCIÓ --

// Hozzon létre egy COM objektumot
Excel = Új COMObject("Excel.Application");
// Nyitott könyv
Könyv = Excel. munkafüzetek. Nyisd ki( a fájl elérési útja );

Lap = Könyv. Munkalapok (1);

// Bezárni a könyvet
Könyv . Bezárás(0);

// Az Excel bezárása és a memória felszabadítása
Excel . Kilépés();
Excel = 0 ;

// —— 2. LEHETŐSÉG ——

// Nyitott könyv
Könyv = GetCOMObject( a fájl elérési útja );
// Elhelyezés a kívánt lapon
Lap = Könyv. Munkalapok (1);

// Olvassa el a cella értékét, általában itt található a cella bypass hurok
CellValue = Lap. Cellák (Sorszám, Oszlopszám). érték;

// Bezárni a könyvet
Könyv . Alkalmazás. Qui t();

Mert kitérő Az Excel munkalap összes kitöltött sorában a következő trükköket használhatja:

// -- 1.OPCIÓ --
Sorok száma = Lap. Sejtek (1, 1). SpecialCells(11 ). Sor;
For RowNumber = 1 Sorok száma szerint Hurok
CellValue = Lap. Cellák (Sorszám, Oszlopszám). érték;
EndCycle;

// —— 2. LEHETŐSÉG ——
Sorszám = 0 ;
Míg a True Loop
LineNumber = Sorszám + 1 ;
CellValue = Lap. Cellák (Sorszám, Oszlopszám). érték;
Ha NEM ValueFilled(CellValue) Akkor
elvetél;
EndIf;
EndCycle;

Ahelyett, hogy egymás után végigmenne a lap összes vonalán, megteheti kiírja az összes adatot egy tömbbeés dolgozz vele. Ez a megközelítés gyorsabb lesz, ha nagy mennyiségű adatot olvas:

TotalColumns = Lap. Sejtek (1, 1). SpecialCells(11 ). Oszlop;
TotalRows = Lap. Sejtek (1, 1). SpecialCells(11 ). Sor;

Vidék = Lap. Tartomány(Lap. Cellák(1 , 1 ), List. Cells(Összes sor, Összes oszlop));
Adat = Régió. érték. kirak();

Az alábbi táblázat felsorolja a legkeresettebb tulajdonságokat és módszereket az Excel OLE-n keresztüli használatához:

Akció Kód Egy komment
Munka az alkalmazással
Alkalmazásablak láthatóságának beállítása Excel . látható= hamis;
A figyelmeztetés megjelenítési módjának beállítása (megjelenítés/nem kijelzés) Excel . Display Alerts= hamis;
Az alkalmazás bezárása Excel . Kilépés();
Munka könyvvel
Hozzon létre egy új könyvet Könyv = Excel. munkafüzetek. Hozzáadás();
Meglévő munkafüzet megnyitása Könyv = Excel. munkafüzetek. Open(Fájlnév);
Könyv mentése Könyv . Mentés másként (Fájlnév);
könyvzárás Könyv . Bezárás(0);
Lappal dolgozni
Az aktuális lap beállítása Lap = Könyv. Munkalapok (SheetNumber);
Névbeállítás Lap . Név = Név;
Védelem beállítása Lap . Védje();
Védelem eltávolítása Lap . Védelem megszüntetése();
Az oldal tájolásának beállítása Lap . Oldal beállítása. Tájolás = 2; 1 - álló, 2 - fekvő
A bal oldali szegély beállítása Lap . Oldal beállítása. LeftMargin = Excel. Centimeters To Points (centiméter);
A felső határ beállítása Lap . Oldal beállítása. TopMargin = Excel. Centimeters To Points (centiméter);
A megfelelő szegély beállítása Lap . Oldal beállítása. RightMargin = Excel. Centimeters To Points (centiméter);
Az alsó határ beállítása Lap . Oldal beállítása. BottomMargin = Excel. Centimeters To Points (centiméter);
Munka sorokkal, oszlopokkal, cellákkal
Az oszlop szélességének beállítása Lap . Oszlopok(Oszlopszám). ColumnWidth = Szélesség;
Egy vonal eltávolítása Lap . Sorok(RowNumber). Töröl();
Oszlop törlése Lap . Oszlopok(Oszlopszám). töröl();
Egy cella törlése Lap . Cellák (Sorszám, Oszlopszám). Töröl();
Érték beállítása Lap . Cellák (Sorszám, Oszlopszám). Érték = Érték;
Cellák egyesítése Lap . Tartomány(Lap. Cellák(Sorszám, Oszlopszám), Lap. Cellák(Sorszám1, Oszlopszám1)). Összeolvad();
A betűtípus telepítése Lap . Cellák (Sorszám, Oszlopszám). Betűtípus. Név = FontName;
A betűméret beállítása Lap . Cellák (Sorszám, Oszlopszám). Betűtípus. Méret = FontSize;
Félkövér betűtípus beállítása Lap . Cellák (Sorszám, Oszlopszám). Betűtípus. Bátor = 1 ; 1 - félkövér, 0 - normál
Dőlt betű beállítása Lap . Cellák (Sorszám, Oszlopszám). Betűtípus. Dőlt = 1 ; 1 - dőlt, 0 - normál
Aláhúzott betűtípus beállítása Lap . Cellák (Sorszám, Oszlopszám). Betűtípus. Aláhúzás = 2 ; 2 - aláhúzva, 1 - nem

Annak érdekében, hogy megtudja, melyik tulajdonságot kell megváltoztatni, vagy melyik metódust kell meghívni, használhatja makrók Excel. Ha rögzít egy makrót a szükséges műveletekkel, akkor a programkódot megtekintheti a rögzített makró VBA-jában.

COMSafeArray használata

Ha nagy mennyiségű adatot tölt ki az 1C-ből az Excelbe, az objektumot felgyorsíthatja COMSafeArray. A szintaktikai segéd meghatározása szerint a COMSafeArray egy többdimenziós tömbön lévő objektumburkoló SafeArray a COM-tól. Lehetővé teszi a SafeArray létrehozását és használatát a COM-objektumok közötti adatcseréhez. Egyszerűen fogalmazva, ez egy olyan értéktömb, amely az OLE technológiát használó alkalmazások közötti cserére használható.

// COMSafeArray létrehozása
ArrayCom = Új COMSafeArray("VT_Variant", TotalColumns, TotalRows);
// A COMSafeArray feltöltése
Mert Str = 0 sor összesen – 1 hurok
Mert Szám = 0 összesen oszlop – 1 ciklus
ArrayCom . SetValue(szám, Str, érték);
EndCycle;
EndCycle;
// Az Excel-lap területértékeinek hozzárendelése a COMSafeArray-ből
Lap . Tartomány(Lap. Cellák(1 , 1 ), List. Cells(Összes sor, Összes oszlop)). Érték = ArrayCom;

Csere ADO-n keresztül

Az ADO-n keresztül cserélt Excel-fájl egy olyan adatbázis, amely SQL-lekérdezésekkel érhető el. Az MS Excel telepítése nem szükséges, de egy ODBC illesztőprogram szükséges, amelyen keresztül történik a hozzáférés. A használt ODBC illesztőprogramot a fájl kapcsolati karakterláncának megadása határozza meg. Általában a szükséges illesztőprogram már telepítve van a számítógépen.

Az ADO-n keresztüli csere észrevehetően gyorsabb, mint az OLE-n keresztüli csere, de kirakodáskor nincs mód az Excel funkcionalitására cellák díszítésére, oldalak jelölésére, képletek beállítására stb.

Példa kirakodás:


Kapcsolat = Új COMObject("ADODB.Kapcsolat");


Összetett . ConnectionString="

|DataSource=" + Fájlnév + ";
;
Összetett . nyisd ki(); // Kapcsolat megnyitása

// Hozzon létre egy COM objektumot a parancshoz
Parancs = Új COMObject("ADODB.Command");
Csapat

// Parancsszöveg hozzárendelése táblázat létrehozásához
Csapat . parancsszöveg= "TÁBLÁZAT LÉTREHOZÁSA [1. lap] (1. oszlop char(255), 2. oszlop dátuma, 3. oszlop int, 4. oszlop lebegés)";
Csapat . végrehajt(); // Parancsvégrehajtás

// Parancsszöveg hozzárendelése táblázatsor hozzáadásához
Csapat . parancsszöveg= "INSERT INTO [Sheet1] (1. oszlop, 2. oszlop, 3. oszlop, 4. oszlop) értékek ('abvgdeo', '2017-08-11', '12345', '12345,6789')";
Command.Execute(); // Parancsvégrehajtás

// A parancs törlése és a kapcsolat bezárása
parancs = undefined;
Összetett . Bezárás();
Kapcsolat = Undefined;

Új lap létrehozásához és szerkezetének kialakításához használhatja az objektumokat ADOX.KatalógusÉs ADOX.Táblázat. Ebben az esetben a kód így fog kinézni:

// Hozzon létre egy COM objektumot a könyvvel való együttműködéshez
Könyv = Új COMObject("ADOX.Katalógus");
Könyv . ActiveConnection = Kapcsolat;

// Hozzon létre egy COM-objektumot, amely a munkalap adatstruktúrájával működik
Táblázat = Új COMObject("ADOX.Tábla");
asztal . Név = "1. lap" ;
asztal . Oszlopok. Append("Oszlop1" , 202 );
asztal . Oszlopok. Append("2. oszlop" , 7 );
asztal . Oszlopok. Append("Oszlop3" , 5 );
asztal . Oszlopok. Append("4. oszlop" , 5 );

// Hozzon létre egy lapot a könyvben a leírt szerkezettel
Könyv . táblázatok. hozzáfűz(tábla);
táblázat = undefined;
könyv = undefined;

A fenti példában a módszerben

asztal . Oszlopok. Mellékel("1. oszlop", 202);

a második paraméter az oszlop típusát adja meg. A paraméter nem kötelező, itt van néhány oszloptípus érték:

  • 5-adDouble;
  • 6 - adCurrency;
  • 7 - addDate;
  • 11 - adBoolean;
  • 202 - adVarWChar;
  • 203-adLongVarWChar.

Példa olvasás:

// Hozzon létre egy COM objektumot a kapcsolathoz
Kapcsolat = Új COMObject("ADODB.Kapcsolat");

// Kapcsolódási karakterlánc beállítása
Összetett . ConnectionString="
|Provider=Microsoft.ACE.OLEDB.12.0;
|DataSource=" + Fájlnév + ";
|Extended Properties=""Excel 12.0 XML;HDR=IGEN"";";
Összetett . nyisd ki(); // Kapcsolat megnyitása

// Hozzon létre egy COM objektumot a kijelölés fogadásához
Kijelölés = Új COMObject("ADODB.Rekordkészlet");
RequestText = "SELECT * FROM [Sheet1$]";

// Hajtsa végre a kérést
Minta . Open(QueryText, Connection);

// A kijelölés eredményének megkerülése
Miközben NEM mintavétel. EOF() Hurok
ColumnValue1 = Kijelölés. mezőket. Item ("1. oszlop"). érték ; // Hivatkozás oszlopnév szerint
2. oszlop értéke = kijelölés. mezőket. Tétel(0 ). érték; // Lekérés oszlopindex alapján
Minta . MoveNext();
EndCycle;

Minta . Bezárás();
Minta = undefined;
Összetett . Bezárás();
Kapcsolat = undefined;

A kapcsolati karakterláncban a paraméter HDR meghatározza, hogy a lap első sora hogyan lesz érzékelve. Lehetséges opciók:

  • IGEN – az első sort az oszlopok neveként érzékeli. Az értékek név és oszlopindex alapján érhetők el.
  • NEM – Az első sor adatnak minősül. Az értékek csak oszlopindex segítségével érhetők el.

A megadott példákban csak néhány ADO objektumot vettünk figyelembe. Az ADO objektummodell a következő objektumokból áll:

  • kapcsolat;
  • parancs;
  • rekordkészlet;
  • rekord;
  • mezők;
  • Folyam;
  • hibák;
  • paraméterek;
  • tulajdonságait.

Feltöltés programozás nélkül

Az adatok 1C-ből Excelbe történő mentéséhez nem mindig tanácsos programozáshoz folyamodni. Ha Vállalati módban a felhasználó meg tudja jeleníteni a feltöltéshez szükséges adatokat, akkor ezek programozás nélkül is elmenthetők Excelbe.

Táblázat-dokumentum (például egy jelentés eredményének) mentéséhez meghívhatja a parancsot Megment vagy Mentés másként… főmenü.

A megnyíló ablakban ki kell választani a mentett fájl könyvtárát, nevét és formátumát.

A dinamikus listák (például egy elemlista) adatainak mentéséhez a következőket kell tennie:

  1. Az adatokat a paranccsal egy táblázatba írja ki Tovább ⇒ Lista megjelenítése...;
  2. Mentse el a táblázatkezelő dokumentumot a kívánt formátumban.

Az információk feltöltése vagy letöltése az 1C-ben az egyik leggyakoribb feladat a konfigurációkkal végzett munka során. Ez a cikk segít az azonos 1C konfigurációjú adatbázisok közötti gyors adatcserében.


Az adatátvitelre olyan helyzetekben van szükség, amikor adatokat kell feltöltenie a „Nómenklatúra”, „Költségtételek” kézikönyvek mentéséhez vagy archív másolatának létrehozásához; dokumentumok "Bemeneti egyenlegek", "Bejövő készpénzes megbízás" stb. Vagyis a program bármely objektuma, beleértve a számviteli nyilvántartásokat, információkat és megtakarításokat.

A feladat elvégzéséhez feldolgozásra van szükség - IB 1C8 adatok feltöltésének / letöltésének feldolgozása.

Például el kell mentenünk a "Vállalkozók" könyvtárat, hogy a jövőben, ha kiderült, hogy egy működő adatbázisban sérült, vagy véletlenül valamelyik partner törölve lett belőle, le tudjuk tölteni a teljes listát.


Tehát a könyvtáradatokat be kell töltenünk egy "xml" kiterjesztésű fájlba, más szóval készítenünk egy archív másolatot. Ehhez szükségünk van:

  • Lépjen be a "Vállalati" módba, és nyissa meg az adatbázist, amelyből a partnereket mentjük
  • Az 1s adatbázisban a főmenüben kattintson a "Fájl - Megnyitás" gombra, és válassza ki a letöltött fájlt feldolgozással, amelynek linkje fent található a cikkben. Kinyitjuk

Válassza ki a "Konfigurációs objektumok" oszlopot, és jelölje be a négyzeteket az összes objektum előtt, amelyet ki kell töltenünk. Esetünkben a „Könyvtárak” részben a „Vállalkozók” sor melletti négyzetet kell bejelölnünk.

Fent, a „Hol” beviteli mezővel szemben kattintson a „…” gombra, és jelezze, hogy az alapelemek hol lesznek kirakva. Vegye figyelembe, hogy a könyvtár kiválasztásán kívül meg kell adnia a fájl nevét (a fájl kiterjesztésének "xml"-nek kell lennie)


A jobb oldali másik oszlopban, a „Feltöltés, ha szükséges…” oszlopban mindenhol bejelölhető a jelölőnégyzet, ha az adatbázis szomszédos elemeit kell letöltenünk. Ha ebben az oszlopban nincs jelölőnégyzet a „Bankszámlák” mappa előtt, akkor később, a készülő feltöltésből való betöltés során előfordulhat, hogy a „Fő bankszámla” névre keresztelt „Konpertfelek” címtár adatai üresek, ill. a megfelelő mezőben az "Object not found" felirat olvasható. Ha e címtár előtt pipát hagyunk, akkor a hozzá tartozó partner számára ez a bankszámla is felkerül egy archív másolatba.

Most kattintson a "Futtatás" gombra, és várja meg, amíg a művelet előrehaladása eléri a 100%-ot


Ezzel az 1C adatbázisunk ÖSSZES partnerének kiürítését befejeztük. Ha szükséges, bármikor elérheti őket, ha vissza kell állítani őket egy működő adatbázisban vagy bármely más, hasonló konfigurációjú adatbázisban.

Most térjünk át az adatok betöltésére a címtár archív másolatából egy másik vagy használt adatbázisba:

  • Nyissa meg azt az adatbázist, amelybe az infobázis mentett elemei betöltődnek. A mi helyzetünkben szükségünk van a vállalkozók listájára
  • Most, mint az előző esetben, a főmenüben kattintson a "Fájl → Megnyitás" elemre, és válassza ki a letöltött fájlt feldolgozással, amelynek linkje fent található a cikkben.
  • Adja meg a fájl elérési útját az 1C adatbázisba betöltendő adatokkal

Kattintson a "Futtatás" gombra

Várjuk a könyvtár adatbázisba való betöltésének befejezését


Vegye figyelembe, hogy a cikkben bemutatott feldolgozás révén ugyanazon konfigurációk között feltöltheti és letöltheti az összes infobase objektumot. Ha ki kell töltenie az 1C bázis összes objektumát, akkor ennek megfelelően jelölje be az összes konfigurációs objektum melletti négyzetet: Számlatáblázatok, dokumentumok, könyvtárak stb.

Ha nem sikerült, akkor szakemberünk jöhet és.

Beállít. Kapcsolódjunk. Javítsuk ki. Keressük az 1-es hibát.

A táblázatkezelő dokumentumok és nyomtatott űrlapok 1C-ben történő létrehozásának mechanizmusa meglehetősen átgondolt és jól fejlett, azonban természetesen messze van a Microsoft Excelben megvalósított funkcióktól. Ezért sok felhasználó inkább a következő algoritmus szerint jár el:

  • Hozzon létre egy nyomtatott űrlapot 1C-ben;
  • Mentse el az adatokat Excel-lapként (1. ábra), vagy másolja a táblázatot;
  • Folytassa az információval való munkát egy másik programban.

És gyakran felmerül a kérdés: hogyan lehet közvetlenül feltölteni információkat az 1C-ből az Excelbe, megkerülve a további lépéseket?

Két fő követelménynek kell megfelelni

A feldolgozásunk hibamentes működéséhez szükséges:

  1. A Microsoft Office és különösen az Excel telepítése a felhasználó számítógépére (egy COM objektum létrehozásával csatlakozunk az alkalmazáshoz);
  2. Képzelje el az adattárolási struktúrát az Excelben (értse a cellanevek képződését, tudja, mi az a lap, könyv stb.).

Csak miután meggyőződött arról, hogy ez a két pont teljesül, folytassa a további fejlesztést.

Kirakodási algoritmus és megvalósítása 1C-ben

Az 1C-ből az Excelbe történő kirakodás műveletsora a következő lépések sorozatával ábrázolható:

  1. Adathalmazt képezünk, amelyet Excelben kell menteni;
  2. Hozzon létre kapcsolatot az alkalmazással (indítsa el);
  3. A fájlt feltöltött adatokkal töltjük fel;
  4. Mentjük a fájlt;
  5. Zárja be a megnyitott alkalmazást.

Most ezen a listán részletesebben.

Adathalmaz kialakítása

Az adatforrás lehet egy lekérdezés eredménye, egy táblázatos dokumentum nyomtatott formája vagy bármely elem kiválasztása. Esetünkben az „Áruk és szolgáltatások átvétele” dokumentumnyilvántartást töltjük fel a tárgyhónapra (2. ábra)

2. ábra

Programozottan elindítjuk az alkalmazást

Ahogy fentebb említettük, az indításhoz a Com csatlakozási módot fogjuk használni. A 3. ábra kódja megmutatja, hogyan lehet ezt megtenni.

3. ábra

Szándékosan illesztették be az új objektum létrehozásának eljárását a Kísérlet - Kivétel-vég kísérlet konstrukcióba, hogy a további feldolgozás során kizárjunk mindenféle nem szabványos helyzetet.

A fájl kitöltése, mentése és az alkalmazás leállítása

Először is el kell döntenünk, hogy mit akarunk: feltölteni egy meglévő fájlba az adatokat, vagy létrehozni egy újat:

  • Az első esetben el kell indítanunk a fájlkiválasztó párbeszédablakot, és meg kell kapnunk a meglévő információtároló teljes nevét;
  • A második esetben önállóan kell kitalálnunk a létrehozandó fájl nevét, és meg kell határoznunk a helyét (ebből a két kifejezésből jön létre a fájlnév).

Miután eldöntöttük, hogy hol tároljuk adatainkat, folytatjuk a fájl közvetlen kitöltését, ehhez létrehozunk egy eljárást, és paraméterként átadjuk az aktuális hónapra vonatkozó dokumentumainkat. (4. ábra)

4. ábra

Ahogy a kódból is látható, először is készítettünk egy könyvet, amelyben a táblázatunk tárolódik. Alapértelmezés szerint az Excel három munkalapot hoz létre egy munkafüzetben az első indításakor. Az adatok megadásához bármelyiket kiválaszthatjuk úgy, hogy egyszerűen megadjuk a munkalapszámot a WorkSheets() metódus paramétereként. Ha új lapot kell hozzáadnunk a könyvhöz, akkor egy sort kell írnunk:

NewSheet=NewBook.Sheets.Add();

Ezzel befejeztük a dokumentum általános szerkezetének kialakítását, és folytatjuk a kitöltést.

Egy számlálós hurokkal végigmegyünk az értéktáblázatunk sorain és oszlopain, hogy megkapjuk egy adott cella adatait, és átvigyük azokat a végső táblázatba.

Itt fontos szem előtt tartani, hogy az 1C értéktáblázat sorainak és oszlopainak indexei 0-tól kezdődnek, és 1-gyel kisebb számmal végződnek, mint e sorok és oszlopok száma, valamint a cellák sorainak és oszlopainak számozása. ban ben Az Excel 1-től indul.

Miután átnéztük a táblázatunkat és áthelyeztük egy új helyre, el kell mentenünk a létrehozott fájlt. A SaveAs eljárásban megadott FilePath paraméternek tartalmaznia kell a fájl teljes elérési útját, beleértve a nevét.

Ha a Microsoft Office 2007-es vagy újabb verziója telepítve van a számítógépen, előfordulhat, hogy el kell mentenie egy táblázatkezelő dokumentumot Excel 2003 formátumban. Ezt programozottan megteheti a (-4143) érték megadásával a SaveAs eljárás második paramétereként. Ez a szám jelzi a mentett fájl formátumát, amely megfelel az xls kiterjesztésének.

Hiba esetén (tegyük fel, hogy a mentés alatt álló fájl már nyitva van) a feldolgozásunk figyelmeztesse a felhasználót egy nem szabványos helyzetre, amit a Jelentés () eljárásban írunk.

Mivel nem tervezzük, hogy továbbra is Excellel dolgozunk, be kell zárnunk az alkalmazást. Itt kell megjegyezni, hogy a feldolgozásunk végrehajtását vizuálisan csak a feladatkezelő segítségével tudja nyomon követni, a megnyitott ablakok listájában nem lesz látható. Ismét, ha az alkalmazás nincs bezárva, akkor helyet foglal a RAM-ban, és konfliktusokhoz vezethet az Excel további példányainak elindításakor.

Egy további módszer a táblázatkezelő dokumentumok 1C-ből Excelbe mentésére

A kirakás másik módja, ha a táblázatkezelő dokumentumot közvetlenül lemezre mentjük anélkül, hogy a képernyőn jelenítené meg, vagy a kiadás előtt a megfelelő eljárás kódja látható (5. ábra).

5. ábra

Egy nagyon fontos megjegyzés: az 1C és a programokban Az Excel számértékekben különbözik az egész és a tört elválasztó között, ezt a pontot érdemes figyelembe venni a kirakodásnál, hogy elkerüljük az adatok torzulását.



A témát folytatva:
ablakok

Natalya Komarova , 2009. 05. 28. (2018. 03. 25.) Amikor egy fórumot vagy blogot olvasol, a bejegyzések szerzőire becenévvel és ... a felhasználó képével, az úgynevezett avatárral... emlékszel.