itthon / Dolgozzon az interneten / 1c 8 3 letöltés könyvtárak excelből. Lehetséges adatokat feltölteni Excelből a "Nómenklatúra" kézikönyvbe? Excel alkalmazáson keresztül

1c 8 3 letöltés könyvtárak excelből. Lehetséges adatokat feltölteni Excelből a "Nómenklatúra" kézikönyvbe? Excel alkalmazáson keresztül

A szakember válaszol:

Azonnal jelezni kell, hogy kezdetben az excelből való 1 másodperces betöltési adatok nem állnak rendelkezésre, ehhez van egy külső betöltő 1s 8.3, ami azt jelenti, hogy a kérdésére már meg lehet válaszolni - igen, lehetséges.

Ahhoz, hogy az excelből az 1s 8.3-ba való letöltés az adatok torzítása nélkül történjen, először közvetlenül az Excelben kell elkészítenie a táblázatot. A v1c-ben betöltött listának megfelelően strukturáltnak kell lennie, pl. nem megengedett több adattípus egy oszlopban vagy egy cellában (mennyiség, szám, vezetéknév stb.).

Ha a táblázat rendkívül hozzáférhető, akkor 1 másodpercen belül az excelből való letöltés problémamentesen megy. Ezután végre kell hajtania az 1-es feldolgozást az adatok betöltéséhez az Excelből. A feldolgozás befejezéséhez lépjen a Fájl menübe, és adja meg az Adatok betöltése a táblázatból Document.epf parancsot. Az előugró ablakban a Load Mode (Betöltési mód) sorban a Loading to Directory felirat olvasható. Az alábbi sor a címtár típusát mutatja - Nomenklatúra. Ezután megnyitjuk a fájlt és megkeressük a listában az Excel Sheet-et (*.xls), kiválasztjuk a letöltendő információkat tartalmazó fájlt. Ezután menjünk a beállításokhoz, a sorban A táblázatkezelő dokumentum adatainak első sora a 2-es számot jelöli, mivel táblázatunk fejléce a felső sorban található.

Ezután megszámozzuk az oszlopokat, jelezve az oszlopok kézi számozását. Az összes jelölőnégyzetet letiltjuk, ehhez van egy bizonyos gomb az eszköztáron. A Név és Teljes név mezők zászlókkal megjelölve ne érintse meg a módot, maradjon Keresés, állítsa be az Excel táblázatnak megfelelő oszlopok számozását.

Már csak a mértékegység és az áfakulcs megadása marad, ha nem teszi azonnal, akkor később kézzel kell letennie egy-egy tételt. Bejelölve az ÁFA kulcsa Alapegység mérések, mód – Beállítás, beállítható Alapérték és közvetlenül 18% a sorban Rate. Az előkészítés befejeződött. Adja meg a Spreadsheet Document elemet, majd kattintson a Kitöltés vezérlésére. Meg kell jelennie egy jelzésnek, amely azt jelzi, hogy nincs hiba.

Most már biztonságosan letöltheti. Befejeződött a nómenklatúra betöltése excelből az 1s programba

16.06.2010

Az 1C: Accounting 8 rev. 2.0-s verzióhoz hasonlóan töltse le a tőzsdei lista könyvtárát egy Excel fájlból

Ingyenes hozzáférést biztosít az 1C: Fresh felhőhöz 30 napig!

A gyakorlatban gyakran előfordulnak olyan helyzetek, amikor Excel-táblázatból kell adatokat betölteni az 1C programba, például a cikk referenciakönyvét az árlistából, vagy a Szállítói számláról a Számlát kell betölteni. elektronikus formában e-mailben elküldve.

Az automatikus csere szükségessége különösen akkor aktuális, ha a beírandó elemek száma több tíz, száz vagy akár több ezer, és ekkora adatmennyiség kézi bevitele meglehetősen fáradságos munka. Vannak, akiknek csak egyszer kell letölteniük az adatokat, amikor elkezdenek dolgozni a programmal, másoknak a munkájuk technológiája miatt folyamatosan nagy mennyiségű adatot kell bevinniük.

Természetesen szeretnénk elkerülni ezeket a felesleges erőfeszítéseket és drága időt az elektronikus dokumentumkezelés korszakában.

Ilyenkor sokan saját főállású programozóiktól, franchise-vevőiktől vagy külső fejlesztőiktől rendelik meg a megfelelő feldolgozást, ez azonban többletköltség és idő.

Mi van akkor, ha ez különböző okok miatt nem lehetséges?

Az 1C: Enterprise 8 professzionális verziójának minden felhasználója már rendelkezik ilyen feldolgozással! Az ITS lemezen!

Típusfeldolgozás„DataFrom Spreadsheet Document.epf betöltése”, amely a következő részben található: „Technológiai támogatás”> „Módszertani támogatás 1C:Enterprise 8”> „Univerzális jelentések és feldolgozás”>
D:1CIts\EXE\EXTREPS\UNIREPS82\UploadFromTableDocument

Felhívjuk figyelmét, hogy 2010 februárjától az ITS lemezen ezt a feldolgozást a 8.1-es platformon végzett konfigurációk esetén legyen egy másik szakaszban: „Technológiai támogatás” > „Módszertani támogatás 1C: Enterprise 8” > „1C platform: Enterprise 8.1” > „Univerzális jelentések és feldolgozás” > „Adatok betöltése táblázatos dokumentumból”.
D:1CIts\EXE\EXTREPS\UNIREPS81\UploadFromTableDocument

Magától az 1C cégtől származó feldolgozás univerzális, és lehetővé teszi az adatok feltöltését az 1C: Enterprise 8 platform bármely konfigurációjába, a *.xls (Excel), *.mxl, *.txt, * könyvtárakba, dokumentumokba és információs nyilvántartásokba. dbf.

A feldolgozási lehetőségek nagyon nagyok, és egy cikk keretein belül mindenre kiterjednek lehetséges opciók használata nem lehetséges. Csak a leggyakoribb és legnépszerűbb példákat vegye figyelembe.

1. példa: A nómenklatúra referenciakönyvének betöltése az 1C: Accounting 8. kiadás 2.0-ba az árlistából ideExcel.
2. példa: A nómenklatúra referenciakönyvének betöltése az 1C: Trade Management 8 programban az Excel árlistájából.
Példa 3. Könyvtár letöltése magánszemélyek 1C-ben: Bér- és személyzeti menedzsment 8 Excelből. (hamar)
4. példa Számla betöltése az 1C: Trade Management 8 alkalmazásban Excel dokumentumból.


  • Árlista Excelben "PriceOnlineKhimSnab.xls" - Microsoft Office Excel 97-2003 (.xls)
  • Tipikus konfiguráció Enterprise Accounting Edition 2.0, kiadás 2.0.12.2, platform 8.2 (8.2.10.77)
  • Be kell tölteni az 1C-be az Excelből az áruk nevét és az árakat.

Az árlistából le kell töltenie a nómenklatúra referenciakönyvét az 1C: Számvitel 8-ban.


Vásárolja meg az ITS minimális verzióját 1 hónapra 4818 rubelért.

1. Elindítjuk az 1C programot

2. A feldolgozás megkezdéséhez válassza a "Fájl">"Megnyitás" menüpontot.

3. A megnyíló ablakban keresse meg a feldolgozó fájlt, amely az ITS lemezen a \1CIts\EXE\EXTREPS\UNIREPS82\UploadFromTableDocument könyvtárban található.

Ha korábban másolta a feldolgozó fájlt a számítógépére, kiválaszthatja azt.

Megnyílik egy ablak

Felhívjuk figyelmét, hogy az adatbetöltés két szakaszban történik:

Állítsa be a "Letöltési módot" - Letöltés a könyvtárba

"Könyvtár nézet" - Nómenklatúra

5. A „Táblázatdokumentum” fülön kattintsunk a „Fájl megnyitása” gombra, a megjelenő kiválasztó ablakban keressük meg azt a könyvtárat, amelyben Excelben található az az árlista, ahonnan az 1C-be tervezzük az adatok feltöltését.

Előfordulhat, hogy a fájl kezdetben nem jelenik meg. Állítsa be a fájltípust "Excel Sheet (*.xls)" értékre.

Válassza ki fájlunkat

Megjelennek a nómenklatúra kártya adatai.

8. Állítsa be a címek betöltésének paramétereit

A kényelem érdekében állítsa be a "Kézi oszlopszámozást"

Ebben a szakaszban csak a „Név” érdekli, ezért töröljük a számunkra még nem érdekes négyzetek bejelölését.

„A táblázatos dokumentum első adatsora” - megnézzük az árlistánkat, eldobjuk a fejlécet, a betöltéshez szükséges adatok a kilencedik sortól kezdődnek - „9”-et teszünk

"Ne hozzon létre új elemeket" - NEM jelöljük be a négyzetet, a lehetőség szükséges, ha a meglévő elemek módosítását tervezzük

A „Név” és a „Teljes név” sorok – a Betöltési módot „Keresés”-re állítjuk, „A táblázatos dokumentum oszlopainak száma” – árlistánkban, a harmadik oszlopban a név – „3”-ra írjuk be.

A "Név" sorban jelölje be a "Keresés mező" oszlopban (második oszlop) található négyzetet - a program ellenőrzi az ilyen nevű elem jelenlétét, és ha már létezik, akkor új elem ezzel a névvel nem jön létre.

Felhívjuk figyelmét, hogy az 1C: Accounting 8 programban a könyvtárak elemeit név szerint azonosítják. Ha már nem üres adatbázisba töltünk be, akkor a bevitt pozíciók vizuális ellenőrzése szükséges, hogy kizárjuk az elemek újrabevitelét és megkettőzését.

Ezt a kényelmetlenséget súlyosbítja, ha a címtárak egyszeri kezdeti letöltését nem tervezik, hanem a jövőben ilyen automatikus adatbetöltést is alkalmaznak. Mivel a nevek eltérő írásmódja, a rövidítések, írásjelek használata stb. duplikált elemek jelennek meg.

Gyakori használat és nagy mennyiségű letöltendő adat esetén javasoljuk, hogy mást használjon szoftver termékek 1C az 1C: Enterprise 8 sorból: "1C: Trade Management 8", "1C: Small Business Management 8", "1C: Integrated Automation 8", amelyek a "Cikk" attribútumot használják, amely lehetővé teszi a megbízhatóság többszöri növelését azonosítani a betöltött elemet, és kiküszöbölni az ismétlődő címtárbejegyzések megjelenését.

A "Szülő" sor - a "Betöltési mód" oszlopban válassza ki a "Telepítés" oszlopot, az "Alapértelmezett érték" oszlopban válassza ki azt a mappát (nómenklatúra csoport), amelybe az árlistából (esetünkben "Háztartási vegyszerek") töltjük be az adatokat. ").

Az "Alapmértékegység" sor - a "Betöltési mód" oszlopban válassza a "Beállítás" lehetőséget, az "Alapértelmezett érték" oszlopban válassza ki a mértékegységet (esetünkben egységeket)

Az "ÁFA kulcs" sor - esetünkben az összes letöltött tételre 18% áfát állítunk be, ehhez a "Letöltési mód" oszlopban válassza a "Beállítás", az "Alapértelmezett érték" oszlopban a "18%" lehetőséget. .

Ha az áruk eltérő áfával érkeznek, ami a letölthető árlista külön oszlopában van feltüntetve, akkor a "Letöltés mód" oszlopban állítsa be a "Keresés" és a megfelelő árlista oszlop sorszámát a "Táblázat bizonylat oszlopában. "

"Szolgáltatás" sor - a "Letöltési mód" oszlopban válassza a "Telepítés", az "Alapértelmezett érték" oszlopban a "Nem" lehetőséget (esetünkben minden pozíció áru).

kérdeztük minimális értékeket az állománylista referenciakönyvének új elemei, amelyek lehetővé teszik a munka megkezdését.

A hónap zárásához költségek felosztása, űrlap könyvelés és adóbevallás be kell állítani a "Nómenklatúracsoport" és a "Költségtétel" értékeket, az importált áruk esetében be kell állítani a "Származási ország" és a "Vámnyilatkozat száma", de ez később megtehető csoportos feldolgozás segítségével.

Ha most készen áll ezeknek a részleteknek az értékeinek beállítására, akkor adja meg.

Kattintson a "Letöltés" gombra a jobb alsó sarokban, kattintson az "Igen" gombra a kérdéshez

8. Ellenőrizzük az új elemek jelenlétét a nómenklatúra referenciakönyvének megfelelő csoportjában.

9. Nyissa ki a termékkártyát, ellenőrizze az adatok betöltésének helyességét

Ha minden helyes, akkor folytathatja a második szakaszt - az árak betöltését az árlistából az Excelbe.

Ha a jövőben ezt az eljárást kívánja használni az adatok letöltéséhez ugyanazokkal a letöltési beállításokkal, javasoljuk, hogy mentse el az aktuális beállításokat. Ehhez kattintson a "Beállítások mentése" gombra, és egyértelműen nevezze el az aktuális beállítást, például "Terméknevek betöltése az árlistából". Excel lap».

A "Vállalkozás könyvelése" Rev. 2.0-ban az árak beállítása a "Cikkárak beállítása" dokumentum segítségével történik.

11. Állítsa be a "Letöltés mód" - "Letöltés ide táblázatos rész».

Megnyílik a "Cikkárak beállítása" dokumentumnapló.

Itt kiválaszthatunk egy meglévő dokumentumot, amelybe új elemeket szeretnénk hozzáadni, vagy létrehozhatunk Újat (ajánlott), a dokumentumban jelezzük, hogy melyik „Ártípust” fogjuk feltölteni (példánkban „Kiskereskedelem”).

Kattintson az "OK" gombra, és egyelőre mentse az üres dokumentumot.

Most válassza ki ezt az új mentett bizonylatot a naplóból a "Link" sorban.

A "Táblázat alakú rész" mezőben válassza a "Termékek" lehetőséget.

13. Kérjük, vegye figyelembe, hogy most a „Táblázatdokumentum” fülre kell lépnie, és újra ki kell választania Excel-ben az árlistánkat, ahonnan letöltöttük a neveket, és most letöltjük az árakat (lásd 5. bekezdés).

14. Állítsa be a terhelési paramétereket

Ismét állítsa be a „Táblázat-dokumentumadatok első sorát” – a betöltési nevekhöz hasonlóan állítsa be a „9”-et.

A "Nómenklatúra" sorban állítsa be a "Keresés" betöltési módot, "A táblázatos dokumentum oszlopainak száma" - példánkban a "3"-at állítjuk be.

Az „Ár” sorban állítsa be a betöltési módot „Keresés”, „Táblázat-dokumentum oszlop száma” -ra - írja be a betölteni kívánt árakat tartalmazó oszlop számát - esetünkben "4".

A "Pénznem" sorban állítsa a Letöltés módot "Telepítés" értékre, válassza ki a pénznemet (a példában "rubel")

Ha az árlistájában az áruk árai különböző pénznemben vannak megadva, ami a letölthető árlista külön oszlopában van feltüntetve, akkor a "Letöltés mód" oszlopban állítsa be a "Keresés" és a megfelelő árlista oszlop számát. a "Táblázat dokumentum oszlopában".

Kattintson a "Letöltés" gombra, és válaszoljon "Igen"

15. Nyissa meg a "Cikkárak beállítása" dokumentumot, amelybe az adatokat betöltötte (a "Link" sorban a nagyító képével ellátott gombra kattintva)

16. Ellenőrizzük a dokumentumot, ha minden rendben van, kattintson az "OK" gombra.

Az árakat rögzíteni kell.

17. Nyissa meg a készletlista könyvtárat, ellenőrizze az "Árak" fület a betöltött cikkek kártyáján.

Ha minden rendben van, akkor elkezdheti a fennmaradó árak betöltését (nagyker, hitel stb.). Az eljárás hasonló.

Ha a jövőben ezt az eljárást kívánja használni az adatok letöltéséhez ugyanazokkal a letöltési beállításokkal, javasoljuk, hogy mentse el az aktuális beállításokat. Ehhez kattintson a "Beállítások mentése" gombra, és egyértelműen nevezze el az aktuális beállítást, például "Kiskereskedelmi árak betöltése az Excel árlistájából".

Legközelebb a "Beállítások visszaállítása" gombra kattintva töltheti be az elmentett beállításokat, és kiválasztja a listából a kívántat.

Sok sikert kívánunk!

Folytatjuk...

Shavaleev R.F.

Ebben a cikkben két nagyon fontos témát fogunk átgondolni Önnel, az elsőt, a másodikat természetesen adatok feltöltése 1-től excelbe. Meg kell jegyezni, hogy ezek a témák a felhasználók két fő közönségét érdeklik, ezek a következők:

  • Az 1C Enterprise rendszer felhasználói
  • 1C programozók

Az 1C felhasználók általában szeretnének rendelni pl adatátvitel excelből 1s-be sajátos portolási követelményeiknek megfelelően, míg az 1C programozók nagyobb valószínűséggel keresnek néhány magyarázatot vagy kódpéldákat. Ezen megfontolások alapján úgy döntöttünk, hogy az ebben a cikkben közölt információkat két részre osztjuk az 1C felhasználói és programozói számára.

1C betöltés Excelből és kirakás 1C-ből Excelbe egy hétköznapi felhasználó szemével 1C

Nagyon gyakran kiderül, hogy például egy vállalatnak vagy valamilyen cégnek van olyan dokumentációja, amelyet a számítógépen Excel-fájlokban tárolnak. És gyakran a felhasználóknak van kérdése, de hogyan adatok feltöltése vagy letöltése Excelből 1C-be. Természetesen nem nélkülözhetjük a programozási ismereteket, így ha Ön egyszerű felhasználó, akkor tőlünk kell megrendelnie az 1c szolgáltatásokat, mert minden 1c programozónk mindig meghallgatja Önt, kiválaszt egy speciálisan Önnek tervezett megoldást. , és biztosan segíteni fog.

Miért nincs univerzális feldolgozás az adatok Excelből az 1C-be történő betöltésére?

Válaszoljunk erre a kérdésre, és nézzük meg a főbb pontjait:

  1. Minden felhasználónak különböző Excel-fájljai vannak, az adatok, amelyekből az 1C-be szeretne átvinni, természetesen ezek a fájlok eltérő számú sorral és oszloppal rendelkeznek, és eltérő szemantikai terhelést is hordoznak.
  2. Minden felhasználó külön konfigurációval dolgozik, pl. A konfigurációk eltérőek lehetnek, ami az egyik konfigurációban működik, az nem fog működni egy másik konfigurációban frissítés nélkül.
  3. Az Excelből származó adatokat különböző objektumokra kell átvinni, ezért más kódra van szükség, mivel minden felhasználónak saját követelményei vannak.

Ezen okok miatt lehetetlen létrehozni univerzális feldolgozás tovább adatok betöltése Excelből 1C-be.

Az adatok be- és kitöltése Excelből 1C-be valós fejlesztés példáján

Most pedig vessünk egy pillantást az általánosra hogyan történik az adatok be- és kitöltése az Excelből az 1C-ben, és hogy fog mindez kinézni a kész megoldásban?. Az alábbiakban egy valódi egyéni fejlesztésre mutatunk be példát, valamint az eredeti Excel fájlt.

Ebben a feldolgozásban először ki kell választani az Excel fájlt, majd a "Futtatás" gombra kell kattintani, ami után az Excelből a szükséges adatok betöltődnek a táblázatos részbe. A felhasználónak nincs más dolga, mint az „Átadás a foglaláshoz” gombra kattintani, amely után az adatok átkerült az Excelből az 1C-be.

Adatok feltöltése 1C-ből Excelbe körülbelül ugyanez történik, csak itt az írási feldolgozás bonyolultsága attól függ, hogy milyen adatokat kell kirakni az objektumból. Például megvan a "Nómenklatúra" kézikönyv, és fel akarjuk tölteni magának a cikknek a nevét és ennek a tételnek a mértékegységét, bár maga a tétel sokkal több részletet tartalmazhat, például cikktípus, cikktípus, teljes név stb.

Feldolgozásra van szükségem az adatok Excelből való betöltéséhez és/vagy eltávolításához, mit tegyek?

Nincs más dolga, mint felvenni a telefont és felhívni minket. Ezt követően szakembereink elvégzik az összes szükséges műveletet, hogy Ön pontosan azt kapja, amire szüksége van. Ha sürgős 1c frissítést kell végrehajtania, hívjon minket, szívesen segítünk minden ügyfelünknek!

Adatok betöltése és eltávolítása Excelből 1C-be egy közönséges 1C programozó szemével

Kicsit feljebb sokat adtunk hasznos információ Az 1C felhasználók számára itt az ideje, hogy beszéljünk a kódírás technikai vonatkozásairól, valamint olyan információkat nyújtsunk az 1C programozóknak, amelyek nagyon hasznosak lesznek a kód írásakor. Tekintsük az Excel-lel való munkavégzéshez gyakran használt főbb funkciókat.

Kezdjük azzal, hogyan csatlakoztassuk az Excelt az 1C-hez, ez egy COM objektumon keresztül történik. A kód megfelelő működéséhez az Excelt telepíteni kell a számítógépre, különben semmi sem fog működni:

Miután csatlakoztattuk az Excelt, meg kell nyitnunk szükséges dokumentumot ahonnan az átutalás történik:

Most ki kell választanunk egy excel könyv lapját, a fenti ábrán azt látjuk, hogyan történik egy bizonyos számú lap kiválasztása. A lapszám a "Lapszám" változóban tárolódik:

Egy excel munkafüzet lapjainak számát a "Szám" mező segítségével tudhatjuk meg:

Ahhoz, hogy egy lap nevét egy bizonyos szám alatt kapja meg, hasonló sort kell írnia:

Miután befejeztük az Excellel való munkavégzéshez szükséges összes lépést, a folyamatot le kell zárni. Zárd be, különben lefagy:

Példa egy olyan függvényre, amely egyes cellákat tölt be Excelből 1C-be

Áttekintettük azokat az alapvető eljárásokat és funkciókat, amelyekkel minden 1C programozó találkozik az Excelből az 1C-be való adatok betöltéséhez szükséges feldolgozás írása során. Most ismerkedjünk meg részletesebben azzal a funkcióval, amely beolvassa az Excel fájl egyes celláit.

Úgy gondoljuk, hogy nincs további magyarázat adott kódot nem szükséges megadni, mivel ezeket a funkciókat fent részletesen megvizsgáltuk.

Példa egy függvényre, amely betölti az összes adatot az Excelből egy 1C táblázatos részbe

Olyan függvényt vettünk figyelembe, amely az egyes Excel cellákat jeleníti meg. De mi van akkor, ha egyszerre kell kirakni a teljes excel-lapot, és sorban megkerülni? Itt jön jól az alábbi kód:

Példa egy függvényre, amely adatokat tölt fel az 1C-ből az Excelbe

Fentebb sok érdekes dolgot elemeztünk, de nem érintettünk olyan témát, mint az adatok feltöltése az 1C-ből az Excelbe. Valójában a munka elve itt teljesen ugyanaz, kivéve, hogy programozottan hozunk létre egy új Excel fájlt, és programozottan írjuk le. Nos, ahhoz, hogy értéket írhassunk egy cellába, amint azt valószínűleg már sejtette, a Sheet.Cells (x, y) kifejezést kell a bal oldalra elhelyezni. Az alábbiakban bemutatunk egy példát az adatok 1C-ből Excelbe történő feltöltésére:

Az 1C 8.3-ban lehetőség van egy lista tömeges betöltésére egy táblázatkezelő dokumentumból, például egy Excel-fájlból.

A letöltéshez használjuk külső feldolgozás DataFromSpreadsheetDocument.epf betöltése számára kezelt űrlapok(8.2 és 8.3), amelyek letölthetők . Általános, és minden felügyelt alkalmazáshoz írt konfigurációhoz alkalmasnak kell lennie.

  • Ha Ön programozó, és szeretné fejleszteni a "saját" letöltését az Excelből, részletes utasításokat tovább ;
  • Példa az 1C Trade Management árlista betöltésére a következő címen:.

A külső feldolgozás elindításához lépjen a "Fájl" menübe, majd a "Megnyitás" menübe, és válassza ki ezt a feldolgozást abból a könyvtárból, amelybe elmentette:

Feldolgozás Adatok betöltése az 1C 8.3 táblázatos dokumentumból (kezelt űrlapok)

Miután a feldolgozás megnyílt az 1C-ben, elkezdhet dolgozni vele. Először is el kell döntenünk, hogy hova és mit töltünk fel:

Példát szeretnék mondani a "" kézikönyvre. Létrehoztam egy adatfájlt xls formátumban.

A feldolgozás a következő formátumú fájlokat is betöltheti:

  • bármilyen más formátum, amelyből az adatok másolhatók.

Így néz ki a kezdeti adatokat tartalmazó Excel fájl, amelyet feltöltünk a "Nómenklatúra" kézikönyvébe:

Ingyenes 267 1C videóleckéket kaphat:

Nem kezdtem el előírni a címtár összes mezőjét, mivel ez elég a betöltés elvének megértéséhez. Ráadásul ezek az adatok elegendőek ahhoz, hogy elkezdhessünk dolgozni ezekkel a pozíciókkal.

Ezek a tételek még nem elérhetők információs bázis 1C, és most feltöltjük őket oda.

Kattintson a „Megnyitás” ikonra (az ábrán „Forrás kiválasztása” jelöléssel), és válassza ki az adatfájlt. Használhatja az információk egyszerű másolatát. A példafájlom letölthető. Az adatok automatikusan betöltődnek a feldolgozásba. Most nézzük meg, hogy helyesen töltöttük-e ki adatainkat. Ehhez kattintson a "Kitöltés vezérlése" gombra.

Amint látja, vannak hibáink! megszüntetjük. Lépjen a "Beállítások" fülre:

A hibák kijavítása előtt egy fontos részletre szeretnék figyelni. A program kezdetben nem tudja, hogy melyik mezőben keresse a könyvtárelemet, ha az már ott van. Szóval rá kell mutatnia. Inkább kód alapján keresek, mivel az általában egyedi. A "Keresés mező" oszlopban a "Kód" sorban jelölje be. Most, ha ilyen kódú rekordot találunk, akkor azt lecseréljük, ellenkező esetben létrejön.

Fontos! Ha nem ad meg keresőmezőt, ismétlődő elemek jelenhetnek meg. Főleg egy hasonló fájl második letöltése után!

Most pedig lássuk, miért esküszik az "Egység" mezőre. Az a tény, hogy az 1C 8.3 mértékegységei egy külön könyvtárban vannak tárolva, és az alapértelmezett feldolgozás név szerint keresi ezt az egységet. Valójában azonban az egység szó a "Teljes név" mezőbe van írva.

Sajnos a feldolgozás csak "Név" és "Kód" alapján tud keresni (a programozó számára szélesebbek a lehetőségek). Ha odafigyel a fenti képekre, látni fogja, hogy az "Egység" oszlopban van egy kódom. És a feldolgozás során meg kell adni, hogy a keresést kód alapján kell végrehajtani. Duplán kattintunk az „Egység” melletti „Feltétel” oszlopra, és módosítjuk „Kód”-ra.

Most lássuk, mit mondanak nekünk a „Szolgáltatás”-ról a hibalistában. Még egy fontos megjegyzés. A fájl oszlopait szigorúan ugyanabban a sorrendben kell elhelyezni, mint a keresőmezők sorait.És van "" a legalul, és a fájlban a "Megjegyzés" oszlop után.

A "Cikk típusa" sor felemeléséhez kék nyilak találhatók az űrlap tetején. A "Fel" nyíl segítségével megemeljük a kívánt sort, és a "Megjegyzés" alá helyezzük.

Kattintson az "Adatok betöltése" gombra, és ezúttal minden hiba nélkül megy:

Oktatóvideó az áruk 1C-be való betöltéséhez Excel-fájlokból:

Ez a módszer egyszerű. Lényege, hogy a tárgy SpreadsheetDocument módszerek 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- alakított táblázatos dokumentum, A fájl elérési útja- a feltöltendő fájl neve, SpreadsheetDocumentFileType.XLSX- formátum létrehozott fájl. A következő Excel formátumok támogatottak:

  • XLS95- excel formátumban 95;
  • 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ó opciók:

  • Jelentés;
  • Szöveg.

Csere OLE-n keresztül

Az OLE automatizálási technológián keresztüli csere talán a legáltalánosabb módja a programozott munkavégzésnek Excel fájlok. 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) Azután
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ó A 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 betűtípus, 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 szintaxissegítő definíciója szerint a COMSafeArray egy objektumburkoló többdimenziós tömb 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;
// Lapterület hozzárendelése excel értékeket 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");
Parancs

// Parancsszöveg hozzárendelése táblázat létrehozásához
Parancs . 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)";
Parancs . végrehajt(); // Parancsvégrehajtás

// Parancsszöveg hozzárendelése táblázatsor hozzáadásához
Parancs . 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 Mentés 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.