Computer finestre Internet

Informazioni contabili. Informazioni contabili 1 documento di foglio di calcolo letto Excel 95

La maggior parte delle organizzazioni nella pratica quotidiana utilizza il prodotto software Excel della suite per ufficio Microsoft per tenere traccia delle varie transazioni contabili alla vecchia maniera. Questo accade quando un'azienda è passata da poco al sistema 1C e le sezioni di reportistica non sono ancora state adeguatamente debuggate, oppure il fornitore preferisce inviare un listino prezzi sotto forma di tabella riepilogativa in formato .xls. Non sorprende che spesso sia necessario sostituire l’inserimento manuale delle posizioni con un sistema automatizzato. Ciò ridurrà significativamente i tempi di compilazione dei documenti di nomenclatura e ridurrà il numero di errori, che è importante considerare quando si tratta di diverse dozzine o addirittura centinaia di articoli.


Questo problema può essere risolto in diversi modi: alcune organizzazioni preferiscono affidare questo lavoro al proprio reparto IT, altre assumono sviluppatori che lavorano nell’azienda dell’affiliato, ma questo è piuttosto costoso e richiede molto tempo.


Una via d'uscita molto più redditizia da questa situazione sarebbe quella di utilizzare la configurazione 1C appropriata, che elaborerà i dati in modo assolutamente gratuito e diventerà un assistente universale nell'integrazione di documenti 1C e fogli di calcolo Excel.


In questa sezione ti aiuteremo a capire come configurare il caricamento dei dati da un file .xls in una delle configurazioni software dell'azienda 1C basata su "1C:Enterprise 8"


Ogni utente della versione professionale di 1C:Enterprise 8 dispone già di tale elaborazione! È su disco!

Elaborazione tipica “Loading Data From Tabular Document.epf”, situata nella sezione: “Supporto tecnologico” > “Supporto metodologico 1C: Enterprise 8” > “Report ed elaborazioni universali” >

D:1CIts\EXE\EXTREPS\UNIREPS82\UploadFromTableDocument Scarica


Si ricorda che a partire da febbraio 2010, sul disco ITS, tale elaborazione per configurazioni su piattaforma 8.1 si trova in un'altra sezione: “Supporto tecnologico” > “Supporto metodologico 1C:Enterprise 8” > “Piattaforma 1C:Enterprise 8.1” > “Universal report ed elaborazione" > "Caricamento di dati da un foglio di calcolo".

D:1CIts\EXE\EXTREPS\UNIREPS81\UploadFromTableDocument Scarica


Dati di origine disponibili:

  • Listino prezzi in Excel “PriceOnlineKhimSnab.xls” - Microsoft Office Excel 97-2003 (.xls)
  • Configurazione tipica Enterprise Accounting Edition 2.0, release 2.0.12.2, piattaforma 8.2 (8.2.10.77)
  • È necessario caricare i nomi dei prodotti e i prezzi in 1C da Excel


Dal listino prezzi è necessario scaricare il libro di consultazione degli articoli in 1C: Contabilità 8.

Lanciamo il programma 1C. Per avviare l'elaborazione selezionare la voce di menu “File” > “Apri”.

Nella finestra che si apre troviamo il file di elaborazione

Si trova sul disco ITS nella directory \1CIts\EXE\EXTREPS\UNIREPS82\UploadFromTableDocument

Se hai precedentemente copiato il file di elaborazione sul tuo computer, puoi selezionarlo.


Si aprirà una finestra


Si ricorda che il caricamento dei dati verrà effettuato in due fasi: Fase 1 - caricamento dei nomi e impostazione dei valori dei dettagli dei nuovi elementi della directory necessari per iniziare (unità di misura, aliquota IVA, attributo prodotto/servizio). Fase 2: caricamento dei prezzi.

Caricamento titoli

Imposta la “Modalità download” - Carica nella directory “Visualizzazione directory” - Nomenclatura

Nella scheda "Documento tabella".

Fare clic sul pulsante ex1_b01.jpg “Apri file”, nella finestra di selezione che appare, troviamo la directory in cui abbiamo un listino prezzi in Excel da cui prevediamo di caricare i dati in 1C.


Il file potrebbe non essere visualizzato inizialmente. Imposta il tipo di file su "Foglio Excel (*.xls)"


Seleziona il nostro file



Vengono visualizzati i dettagli della scheda articolo.

Impostazione delle opzioni di caricamento del titolo

Vogliamo attirare la vostra attenzione sull'aspetto del riconoscimento delle unità strutturali dei libri di riferimento della nomenclatura in 1C: programma di contabilità versione 8, perché uno dei punti chiave nell'identificazione di questi elementi è il nome. Se le posizioni della base informazioni non sono state inizialmente riempite, sarà necessario tenere traccia delle posizioni duplicate e, se presenti, eliminarle.


I nomi duplicati sono difficili da evitare; è particolarmente difficile per i dipendenti che utilizzeranno questo tipo di caricamento non per inserire dati una tantum nell'elenco, ma per caricare sistematicamente le informazioni in modo automatico.


La questione è complicata dal fatto che il dipendente deve fare i conti con varie abbreviazioni e altre abbreviazioni, doppia ortografia del nome e uso di vari segni di punteggiatura.


Con un uso ripetuto e una quantità significativa di informazioni scaricate, consigliamo di utilizzare altri software della serie "1C: Enterprise 8", ad esempio "1C: Trade Management 8", "1C: Small Firm Management 8" o "1C: Integrated Automation 8", che hanno il parametro "Articolo", che garantisce un riconoscimento affidabile dei dati caricati nelle directory della nomenclatura ed elimina la possibilità di duplicare i nomi.


Riga "Unità di misura base" - nella colonna "Modalità di caricamento" seleziona "Installa", nella colonna "Valore predefinito" seleziona l'unità di misura (nel nostro caso - pz.)


Riga "Aliquota IVA" - nel nostro caso, per tutti gli elementi scaricati impostiamo l'IVA al 18%, per questo nella colonna "Modalità di caricamento" selezioniamo "Imposta", nella colonna "Valore predefinito" selezioniamo "18%".


Se la merce ha un'IVA diversa, indicata in una colonna separata del listino prezzi scaricato, nella colonna "Modalità di caricamento" impostare "Cerca" e il numero della colonna corrispondente del listino prezzi nella "Colonna N. del documento di foglio di calcolo”.

Riga "Servizio" - nella colonna "Modalità di caricamento", seleziona "Installa", nella colonna "Valore predefinito", seleziona "No" (nel nostro caso, tutte le posizioni sono prodotti).


Abbiamo impostato i valori minimi per i nuovi elementi nella directory della nomenclatura, che ti consentiranno di iniziare a lavorare. Per chiudere il mese, distribuire i costi, generare la rendicontazione contabile e fiscale, sarà necessario impostare i valori “Gruppo Articoli” e “Voce di Costo”; per le merci importate impostare il “Paese di Origine” e il “Numero Dichiarazione Doganale” , ma ciò può essere fatto successivamente utilizzando l'elaborazione di gruppo.


Se sei pronto per impostare i valori di questi dettagli ora, indica. Fai clic su "Download" nell'angolo in basso a destra, fai clic su "Sì" quando richiesto



Verifichiamo la presenza di nuovi elementi nel gruppo corrispondente del libro di consultazione degli articoli

Apri la scheda prodotto e verifica che i dettagli siano caricati correttamente


Se tutto è corretto, puoi procedere alla seconda fase: caricare i prezzi dal listino prezzi in Excel.


Se prevedi di utilizzare questa procedura di caricamento dati in futuro con le stesse impostazioni dei parametri di caricamento, ti consigliamo di salvare le impostazioni correnti. Per fare ciò, fai clic sul pulsante ex1_b03.jpg "Salva impostazioni" e assegna un nome chiaro all'impostazione corrente, ad esempio "Caricamento dei nomi dei prodotti dal listino prezzi Excel".


La prossima volta potrai caricare le impostazioni salvate facendo clic sul pulsante "Ripristina impostazioni" e selezionando quella desiderata dall'elenco.

Caricamento prezzi

In “Contabilità aziendale” Rev. 2.0, i prezzi vengono impostati utilizzando il documento “Impostazione prezzi articoli”.

Impostare "Modalità di caricamento" - "Sezione Carica nella tabella".

Nel campo "Link", seleziona "Impostazione dei prezzi degli articoli".


Qui possiamo selezionare un documento esistente nel quale vogliamo aggiungere nuovi elementi, oppure crearne uno Nuovo (consigliato), nel documento indichiamo quale “Tipo Prezzo” caricheremo (nel nostro esempio “Vendita al dettaglio”).


Fai clic su "Ok" e salva il documento vuoto per ora. Ora seleziona questo nuovo documento salvato dal diario nella riga "Link". Nel campo “Sezione tabellare”, seleziona “Prodotti”

Ora devi andare alla scheda "Documento tabella".

Ancora una volta selezioniamo il nostro listino prezzi in Excel da cui abbiamo scaricato gli articoli, e ora scaricheremo i prezzi (vedi punto 5).

In 1C ci sono 2 modi per lavorare con i file MS Excel: tramite un oggetto COM e strumenti 1C integrati utilizzando un oggetto documento foglio di calcolo. Diamo un'occhiata a entrambi questi metodi in modo più dettagliato.

1. Lavorare attraverso un oggetto COM.

Questo metodo richiede MS Excel installato e, se si lavora con un file sul server, è necessario installare MS Excel sul server, se sul client, è necessario MS Excel anche sul lato client.

Esempio (puoi vederlo in forma testuale alla fine dell'articolo):

Va notato che tutti gli oggetti, i metodi e le proprietà messi a disposizione dall'oggetto COM "Excel.Application" sono oggetti, metodi e proprietà di VBA, il linguaggio di programmazione di MS Office.

Nota:

A volte è necessario lavorare con un modello esistente. Quindi dobbiamo archiviare questo modello da qualche parte in modo che tutti gli utenti necessari possano accedervi. Tuttavia, esiste una soluzione più semplice, salvare il modello come layout binario.

2. Lavorare sul documento tabulare 1C.

Il documento foglio di calcolo 1C supporta il formato MS Excel per la registrazione a partire dalla piattaforma 8, ma per l'apertura solo a partire dalla piattaforma 8.3.6. Inoltre, una volta aperti, tutti i fogli vengono caricati in un unico foglio di calcolo. Dalla versione 8.3.10, durante il caricamento, fogli diversi vengono caricati come aree diverse.

Una voce di esempio è molto semplice e non richiede particolare attenzione:

Tuttavia, qui abbiamo un problema. Quando si registra da 1C in una cartella di lavoro Excel, la visualizzazione dei nomi dei fogli è disabilitata per impostazione predefinita.

Questo problema può essere risolto in 2 modi, 1 - abilitare la visualizzazione dei fogli nelle impostazioni nel libro stesso (non tutti gli utenti saranno d'accordo a farlo), 2 - farlo tramite un oggetto COM (abbiamo ancora bisogno di MS Excel installato ).

Dopo questa piccola aggiunta, le etichette dei fogli saranno visibili nel file MS Excel.

Leggere MS Excel non è un compito così facile, poiché il metodo di lettura è disponibile solo sul server o sul Thick Client. Per fare ciò, dobbiamo trasferire il file MS Excel sul server.

&SuClient

Procedura CreaDocumento()

Eccezione

Finetentativo;

Libro = Excel.WorkBooks.Add(); //Crea una nuova cartella di lavoro MS Excel

Foglio = Book.WorkSheets.Add(); //Aggiungi un foglio

Sheet.Name = "Esempio da 1C"; //Imposta il nome del foglio

Sheet.Cells(1,1).Value = "Creiamo una formula";!}

Foglio.Celle(2,1).Valore = 1;

Foglio.Celle(2,2).Valore = 2;

Foglio.Celle(2,3).Formula = "=A2+B2";

Foglio.Cells(3,1).Valore = DataCorrente();

Book.SaveAs("C:\1\Test.xlsx");

Prenota.Chiudi();

Fine della procedura

&Sul server

Funzione GetLayoutServer()

Restituisce FormAttributesValue("Object").GetLayout("TemplateForUpload"); //In questo modo otteniamo il layout dell'elaborazione esterna;

EndFunction

&SuClient

Procedura Lavoro()

Excel = Nuovo COMObject("Excel.Applicazione");

Eccezione

Report("Tentativo di connessione al componente Excel non riuscito. Excel potrebbe non essere installato su questo computer!");

Finetentativo;

Layout = GetLayoutServer();

Layout.Write(TemporaryFileName);

Hai una domanda o hai bisogno dell'aiuto di un consulente?

Libro = Excel.WorkBooks.Open(TemporaryFileName);

SheetTemplate = Book.WorkSheets(1);

SheetTemplate.Cells(6,1).Value = "Data:";!}

SheetTemplate.Cells(6,2).Value = CurrentDate();

SheetTemplate.NumberFormat = "gg/mm/aa;@"; // Fornire il formato della data, questo formato è stato ottenuto registrando una macro in MS Excel

SheetTemplate.Columns("B:B").EntireColumn.AutoFit; // Allunga la colonna in modo che la data si adatti esattamente

Book.SaveAs(NomeFile);

Prenota.Chiudi();

Fine della procedura

&SuClient

Fine della procedura

&SuClient

Procedura WriteTabularDocument()

TabularDocument = Nuovo TabularDocument();

TabularDocument.Area("R1C1").Text = "Esempio di record in MS Excel da 1C";

TabularDocument.Write("C:\1\Test2.xls",TabularDocumentFileType.XLSX);

Excel = Nuovo COMObject("Excel.Applicazione");

Excel.WorkBooks.Open("C:\1\Test2.xls");

Excel.Visibile = 0;

Excel.ActiveWindow.DisplayWorkbookTabs = 1;

Excel.ActiveWindow.TabRatio = 0,6;

Excel.ActiveWorkbook.Save();

Excel.Application.Quit()

Fine della procedura

DatiBinari = Nuovo DatiBinari("C:\1\test2.xlsx");

Indirizzo=PlaceInTemporaryStorage(BinaryData,ThisForm.UniqueIdentifier) ​​;

TabularDocument = UploadOnServer(Indirizzo);

TabularDocument.Show();

Fine della procedura

&Sul server

Funzione UploadOnServer(Indirizzo)

NomeFileTemporaneo = GetNomeFileTemporaneo("xlsx");

FileData = GetFromTemporaryStorage(Indirizzo);

FileData.Write(NomeFileTemporaneo);

TabularDocument = Nuovo TabularDocument();

restituire TabularDocument;

Questo metodo è semplice. La sua essenza è quella dell'oggetto TabularDocument ha metodi:

  • Scrivi (< ИмяФайла>, < ТипФайлаТаблицы >) per caricare dati in un file;
  • Leggere (< ИмяФайла>, < СпособЧтенияЗначений >) per caricare i dati da un file.

Attenzione!

Il metodo Write() è disponibile sia sul client che sul server. Il metodo Read() è disponibile solo sul lato server. È necessario ricordarlo
quando si pianifica l'interazione client-server.

Diamo un'occhiata a un esempio di salvataggio di un documento di foglio di calcolo in un file. È necessario creare e riempire l'oggetto TabularDocument in qualsiasi modo e scarico al file viene eseguito con una sola riga:

TabDoc . Write(PercorsoFile, TabularDocumentFileType. XLSX);

Qui TabDoc- documento di foglio di calcolo generato, Il percorso del file— nome del file da caricare, TabularDocumentFileType.XLSX— formato del file creato. Sono supportati i seguenti formati Excel:

  • XLS95 - Formato Excel 95;
  • XLS97 - Formato Excel 97;
  • XLSX è un formato Excel 2007.

TabDoc = Nuovo TabularDocument;
TabDoc . Read(PathToFile, metodo di letturaTabularDocumentValues.Value);

Qui Il percorso del file- percorso del file Excel scaricato. Metodo di lettura dei valori di un documento tabulare.Valore determina come devono essere interpretati i dati letti da un documento di origine. Opzioni disponibili:

  • Senso;
  • Testo.

Scambio tramite OLE

Lo scambio tramite la tecnologia di automazione OLE è forse l'opzione più comune per lavorare a livello di codice con i file Excel. Ti consente di utilizzare tutte le funzionalità fornite da Excel, ma è più lento rispetto ad altri metodi. Per lo scambio tramite OLE è necessaria l'installazione di MS Excel:

  • Sul computer dell'utente finale, se lo scambio avviene lato client;
  • Sul computer server 1C:Enterprise, se lo scambio avviene sul lato server.

Esempio scarico:

// Crea un oggetto COM
Excel = Nuovo COMObject("Excel.Applicazione");
// Disabilita avvisi e domande
Eccellere . DisplayAlerts = Falso;
// Crea un nuovo libro
Libro = Eccellere. Libri di lavoro. Aggiungere();
// Posizione sul primo foglio
Foglio = Libro. Fogli di lavoro(1);

// Scrive un valore in una cella
Foglio . Celle (NumeroRiga, NumeroColonna). Valore = ValoreCella;

// Salva il file
Libro . Salva con nome(NomeFile);


Eccellere . Esentato();
Excel = 0;

Esempi lettura:

// -- OPZIONE 1 --

// Crea un oggetto COM
Excel = Nuovo COMObject("Excel.Applicazione");
// Apri un libro
Libro = Eccellere. Cartelle di lavoro. Aprire( Il percorso del file );

Foglio = Libro. Fogli di lavoro(1);

// Chiudo il libro
Libro . Chiudi(0);

// Chiudi Excel e libera memoria
Eccellere . Esentato();
Excel = 0;

// -- OPZIONE 2 --

// Apri un libro
Libro = OttieniOggettoCOM( Il percorso del file );
// Posizionamento sul foglio desiderato
Foglio = Libro. Fogli di lavoro(1);

// Legge il valore della cella, solitamente il ciclo di attraversamento della cella si trova qui
ValoreCella = Foglio. Celle (NumeroRiga, NumeroColonna). Valore;

// Chiudo il libro
Libro . Applicazione. Ecco T();

Per circonvallazione Per tutte le righe completate del foglio di lavoro Excel, puoi utilizzare le seguenti tecniche:

// -- OPZIONE 1 --
Numero di righe = foglio. Celle(1, 1). Celle speciali(11). Riga;
Per RowNumber = 1 per numero di righe ciclo
ValoreCella = Foglio. Celle (NumeroRiga, NumeroColonna). Valore;
FineCiclo;

// -- OPZIONE 2 --
NumeroRiga = 0 ;
Mentre il Ciclo della Verità
NumeroRiga = NumeroRiga + 1 ;
ValoreCella = Foglio. Celle (NumeroRiga, NumeroColonna). Valore;
Se NON ValueFilled(CellValue) Poi
Interrompere;
finisci se;
FineCiclo;

Invece di attraversare tutte le righe del foglio in sequenza, puoi farlo scarica tutti i dati in un array e lavorare con lui. Questo approccio sarà più veloce durante la lettura di una grande quantità di dati:

Colonne totali = Foglio. Celle(1, 1). Celle speciali(11). Colonna;
Righe totali = Foglia. Celle(1, 1). Celle speciali(11). Riga;

Regione = Foglia. Intervallo (Foglio. Celle (1, 1), Foglio. Celle (Righe totali, Colonne totali));
Dati = Regione. Valore. Scaricare();

La tabella seguente mostra le proprietà e i metodi più popolari per lavorare con Excel tramite OLE:

Azione Codice Un commento
Lavorare con l'applicazione
Impostazione della visibilità della finestra dell'applicazione Eccellere . Visibile= Falso;
Impostazione della modalità di uscita dell'avviso (visualizzazione/non visualizzazione) Eccellere . Visualizza avvisi= Falso;
Chiusura dell'applicazione Eccellere . Esentato();
Lavorare con un libro
Creazione di un nuovo libro Libro = Eccellere. Libri di lavoro. Aggiungere();
Apertura di una cartella di lavoro esistente Libro = Eccellere. Libri di lavoro. Apri(NomeFile);
Salvare un libro Libro . Salva con nome(NomeFile);
Chiusura del libro Libro . Chiudi(0);
Lavorare con un foglio
Impostazione del foglio corrente Foglio = Libro. Fogli di lavoro(Numero foglio);
Impostazione del nome Foglio . Nome = Nome;
Impostazione della protezione Foglio . Proteggere();
Rimozione della protezione Foglio . Non protetto();
Impostazione dell'orientamento della pagina Foglio . Impostazione della pagina. Orientamento = 2; 1 - ritratto, 2 - paesaggio
Impostazione del bordo sinistro Foglio . Impostazione della pagina. Margine sinistro = Excel. CentimetriAPunti(Centimetri);
Impostazione del limite superiore Foglio . Impostazione della pagina. Margine superiore = Excel. CentimetriAPunti(Centimetri);
Impostazione del bordo destro Foglio . Impostazione della pagina. Margine destro = Excel. CentimetriAPunti(Centimetri);
Impostazione del limite inferiore Foglio . Impostazione della pagina. Margine inferiore = Excel. CentimetriAPunti(Centimetri);
Lavorare con righe, colonne, celle
Impostazione della larghezza della colonna Foglio . Colonne(NumeroColonna). LarghezzaColonna = Larghezza;
Elimina una riga Foglio . Righe(NumeroRiga). Eliminare();
Rimozione di una colonna Foglio . Colonne(NumeroColonna). Eliminare();
Elimina una cella Foglio . Celle (NumeroRiga, NumeroColonna). Eliminare();
Impostazione del valore Foglio . Celle (NumeroRiga, NumeroColonna). Valore = Valore;
Unione di celle Foglio . Intervallo(Foglio. Celle(NumeroRiga, NumeroColonna), Foglio. Celle(NumeroRiga1, NumeroColonna1)). Unisci();
Impostazione del carattere Foglio . Celle (NumeroRiga, NumeroColonna). Font. Nome = NomeCarattere;
Impostazione della dimensione del carattere Foglio . Celle (NumeroRiga, NumeroColonna). Font. Dimensione = Dimensione carattere;
Impostazione del carattere in grassetto Foglio . Celle (NumeroRiga, NumeroColonna). Font. Grassetto = 1 ; 1 - grassetto, 0 - normale
Impostazione del corsivo Foglio . Celle (NumeroRiga, NumeroColonna). Font. Corsivo = 1 ; 1 - corsivo, 0 - normale
Impostazione del carattere sottolineato Foglio . Celle (NumeroRiga, NumeroColonna). Font. Sottolineare = 2 ; 2 - sottolineato, 1 - no

Per scoprire quale proprietà deve essere modificata o quale metodo chiamare, è possibile utilizzare macro Eccellere. Se registri una macro con le azioni richieste, puoi quindi guardare il codice VBA della macro registrata.

Utilizzando COMSafeArray

Quando scarichi grandi quantità di dati da 1C a Excel, puoi utilizzare l'oggetto per accelerare COMSafeArray. Secondo la definizione dell'assistente alla sintassi, COMSafeArray è un wrapper di oggetti su un array multidimensionale SafeArray dal COM. Consente di creare e utilizzare SafeArray per lo scambio di dati tra oggetti COM. In poche parole, si tratta di un array di valori che può essere utilizzato per lo scambio tra applicazioni che utilizzano la tecnologia OLE.

// Crea COMSafeArray
ArrayCom = Nuovo COMSafeArray("VT_Variant", TotalColumns, TotalRows);
// Riempi COMSafeArray
Per Pagina = 0 per TotalLines - 1 ciclo
Per Numero = 0 colonne totali - 1 ciclo
ArrayCom . ImpostaValore(Conteggio, Pagina, Valore);
FineCiclo;
FineCiclo;
// Assegnazione di un'area del foglio di lavoro Excel ai valori di COMSafeArray
Foglio . Intervallo (Foglio. Celle (1, 1), Foglio. Celle (Righe totali, Colonne totali)). Valore = ArrayCom;

Scambio tramite ADO

Un file Excel, quando scambiato tramite ADO, è un database a cui è possibile accedere utilizzando query SQL. Non è richiesta l'installazione di MS Excel, ma è richiesta la presenza di un driver ODBC, con il quale verrà effettuato l'accesso. Il driver ODBC utilizzato viene determinato specificando la stringa di connessione al file. In genere, il driver richiesto è già installato sul computer.

Lo scambio tramite ADO è notevolmente più veloce dello scambio tramite OLE, ma durante il caricamento non è possibile utilizzare la funzionalità di Excel per progettare celle, disporre pagine, impostare formule, ecc.

Esempio scarico:


Connessione = Nuovo COMObject("ADODB.Connection");


Composto . Stringa di connessione = "

|Origine dati=" +NomeFile+ ";
;
Composto . Aprire(); // Apre una connessione

// Crea un oggetto COM per il comando
Comando = Nuovo COMObject("ADODB.Command");
Squadra

// Assegnazione del testo del comando per creare una tabella
Squadra . TestoComando = "CREA TABELLA [Foglio1] (Colonna1 char(255), Colonna2 data, Colonna3 int, Colonna4 float)";
Squadra . Eseguire(); // Esegue il comando

// Assegnazione del testo del comando per aggiungere una riga della tabella
Squadra . TestoComando = "INSERISCI IN [Foglio1] (Colonna1, Colonna2, Colonna3, Colonna4) valori ('abvwhere', '8/11/2017', '12345', '12345,6789')";
Comando.Esegui(); // Esegue il comando

// Rimuove il comando e chiude la connessione
Comando = Non definito;
Composto . Vicino();
Connessione = Non definita;

Per creare un nuovo foglio e formarne la struttura, puoi utilizzare gli oggetti ADOX.Catalogo E ADOX.Tabella. In questo caso, il codice sarà simile a:

// Crea un oggetto COM per lavorare con il libro
Libro = Nuovo COMObject("ADOX.Catalog");
Libro . Connessione attiva = Connessione;

// Crea un oggetto COM per lavorare con la struttura dei dati sul foglio
Tabella = Nuovo COMObject("ADOX.Table");
Tavolo . Nome = "Foglio1";
Tavolo . Colonne. Aggiungi("Colonna1", 202);
Tavolo . Colonne. Append("Colonna2", 7);
Tavolo . Colonne. Aggiungi("Colonna3", 5);
Tavolo . Colonne. Aggiungi("Colonna4", 5);

// Crea un foglio con la struttura descritta nella cartella di lavoro
Libro . Tabelle. Aggiungi(Tabella);
Tabella = Non definita;
Libro = Non definito;

Nell'esempio precedente, nel metodo

Tavolo . Colonne. Aggiungere(“Colonna1”, 202);

il secondo parametro specifica il tipo di colonna. Il parametro è facoltativo, ecco alcuni valori del tipo di colonna:

  • 5 - annuncioDoppio;
  • 6 - adValuta;
  • 7 - adData;
  • 11 - annuncioBooleano;
  • 202 - adVarWChar;
  • 203 - adLongVarWChar.

Esempio lettura:

// Crea un oggetto COM per la connessione
Connessione = Nuovo COMObject("ADODB.Connection");

// Imposta la stringa di connessione
Composto . Stringa di connessione = "
|Provider=Microsoft.ACE.OLEDB.12.0;
|Origine dati=" +NomeFile+ ";
|Proprietà estese=""Excel 12.0 XML;HDR=SI"";";
Composto . Aprire(); // Apre una connessione

// Crea un oggetto COM per ricevere la selezione
Seleziona = Nuovo COMObject("ADODB.Recordset");
TestoRichiesta = "SELEZIONA * DA [Foglio1$]";

// Esegue la richiesta
Campione . Apri(Testointerrogazione, Connessione);

// Ignora il risultato del campione
Non ancora una selezione. Ciclo EOF()
Valore colonna1 = selezione. Campi. Articolo ("Colonna1"). Valore ; // Accesso in base al nome della colonna
Colonna2Valore = Selezione. Campi. Articolo(0). Valore; // Accesso tramite indice di colonna
Campione . SpostaAvanti();
FineCiclo;

Campione . Vicino();
Campione = Non definito;
Composto . Vicino();
Connessione = Non definita;

Nella stringa di connessione il parametro HDR determina come verrà percepita la prima riga del foglio. Opzioni possibili:

  • SÌ: la prima riga viene trattata come nome di colonna. È possibile accedere ai valori per nome e indice di colonna.
  • NO: la prima riga viene trattata come dati. È possibile accedere ai valori solo tramite l'indice della colonna.

Questi esempi coprono solo alcuni oggetti ADO. Il modello a oggetti ADO è costituito dai seguenti oggetti:

  • connessione;
  • Comando;
  • set di record;
  • Documentazione;
  • Campi;
  • Flusso;
  • Errori;
  • parametri;
  • Proprietà.

Carica senza programmazione

Per salvare i dati da 1C a Excel non è sempre consigliabile ricorrere alla programmazione. Se in modalità Enterprise l'utente può visualizzare i dati necessari per il download, questi possono essere salvati in Excel senza programmazione.

Per salvare un documento di foglio di calcolo (ad esempio il risultato di un report), puoi chiamare il comando Salva O Salva come… menu principale.

Nella finestra che si apre, è necessario selezionare la directory, il nome e il formato del file salvato.

Per salvare i dati da elenchi dinamici (ad esempio un elenco di elementi), è necessario:

  1. Invia i dati a un documento di foglio di calcolo utilizzando il comando Altro ⇒ Elenco...;
  2. Salvare il documento del foglio di calcolo nel formato richiesto.

Configurazione: contabilità 1c

Versione di configurazione: 3.0.44.177

Data di pubblicazione: 20.01.2017

Il programma 1C: Contabilità ora offre la possibilità di caricare e scaricare regolarmente dati da fogli di calcolo Excel, senza l'uso di elaborazioni di terze parti o modifiche alla configurazione. Caricare e scaricare è così semplice che gli utenti esperti si innamoreranno rapidamente di questo comodo meccanismo e i nuovi utenti lo padroneggeranno rapidamente.

Scarica da Excel 1C: Contabilità 8.3 ed. 3.0

Ad esempio, abbiamo questo foglio di calcolo Excel per caricare un elenco di articoli e prezzi (vendita al dettaglio e acquisti).

Vieni a .

In alto clicca Nomenclatura e prezzi - Download. Qui è dove è nascosto il caricamento e lo scaricamento dai documenti del foglio di calcolo.

Il download supporta xls (vecchio formato Excel 97-2003) e xlsx (nuovo formato), nonché i formati mxl e ods. Adesso selezioniamo il nostro file con la nomenclatura e aspettiamo che si carichi.

Il documento del foglio di calcolo è stato caricato nel modulo in cui lo abbiamo visto in Excel, ora assegneremo le colonne ed elimineremo quelle non necessarie.

Clicca su Si prega di fornire i dettagli e seleziona la voce desiderata dall'elenco.

Selezionare la riga che contiene voci non necessarie, ovvero l'intestazione della tabella, e fare clic Elimina riga.

Adesso cancelliamo la colonna con il prezzo di acquisto, notatelo l'elaborazione può compilare solo 1 tipo di prezzo alla volta!!! Quindi puoi ripetere questa operazione e caricare il 2° tipo di prezzo, per il 1° caricare Retail per il 2° acquisto.

Compila i dati vuoti, Tipo di prezzo, Imposta prezzi per. I pulsanti Tutti, Trovato, Nuovo, Duplicati faciliteranno notevolmente la ricerca e aiuteranno a confrontare gli elementi. Compila e fai clic Scaricamento dopodiché i dati verranno caricati in 1C: Contabilità.

Nuovi articoli sono comparsi nell'elenco prodotti, compilati e con prezzi assegnati. Se devi caricare un altro tipo di prezzo, esegui nuovamente tutti i passaggi, ma seleziona una colonna con un prezzo diverso, 1C stesso troverà le posizioni già create e non tenterà di duplicarle, ma aggiungerà semplicemente un nuovo tipo di prezzo.

Come puoi vedere, il download ha creato 2 documenti per l'impostazione dei prezzi degli articoli, per il prezzo di acquisto e per il prezzo al dettaglio. La differenza tra questo trattamento è Caricamento da Excel a 1C: Contabilità 8.3, Il fatto è che si tratta di un'elaborazione standard, funziona senza errori e tiene conto di tutte le caratteristiche della compilazione del documento.

Caricamento in Excel da 1C: Contabilità 8.3 ed. 3.0

Una funzione molto utile nell'edizione 3.0.44.177 e successive è il caricamento in Excel da 1C: Contabilità 8.3; questa elaborazione ti aiuterà a creare un listino aziendale o a trasferire immediatamente la tua lista di articoli a fornitori o acquirenti con i prezzi.

È tutto lì nella directory Nomenclatura - Nomenclatura e Prezzi - Scarico.

Proprio così Colonne, seleziona le colonne che devono essere create nel documento Excel. Selezione serve per selezionare elementi per Gruppi, proprietà, nomi... ecc.

Per caricare su Excel aggiungeremo una nuova colonna, ovvero l'aliquota IVA, non sembra essere molto necessaria, ma ci stiamo esercitando.

Come caricare un foglio di calcolo nel programma di contabilità 1C 8.3?

In 1C 8.3 è possibile scaricare in blocco un elenco di elementi da un documento di foglio di calcolo, ad esempio da un file Excel.

Per il caricamento, utilizziamo l'elaborazione esterna LoadDataFromTabularDocument.epf per i moduli gestiti (8.2 e 8.3). È universale e dovrebbe essere adatto a qualsiasi configurazione scritta per un'applicazione gestita.

Per avviare l'elaborazione esterna, è necessario andare nel menu "File", quindi "Apri" e selezionare questa elaborazione dalla directory in cui è stata salvata:

Elaborazione Caricamento dati da un documento foglio di calcolo 1C 8.3 (moduli gestiti)

Dopo che l'elaborazione è stata aperta in 1C, puoi iniziare a lavorarci. Prima di tutto dobbiamo decidere dove e cosa scaricheremo:

Facciamo un esempio nel libro di consultazione "Nomenclatura". Creiamo un file con i dati in formato xls.

L'elaborazione può anche caricare file nel seguente formato:

  • qualsiasi altro formato da cui è possibile copiare i dati

Ecco come appare il file Excel con i dati di origine, che caricheremo nel libro di consultazione "Nomenclatura":

Non abbiamo annotato tutti i campi della directory, poiché questo sarà sufficiente per comprendere il principio del caricamento. Inoltre, questi dati sono sufficienti per iniziare a lavorare con queste posizioni.

Queste posizioni non sono attualmente nel database delle informazioni 1C e ora le caricheremo lì.

Cliccare sull'icona “Apri” (indicata in figura come “Seleziona sorgente”) e selezionare il file con i dati. È possibile utilizzare la semplice copia delle informazioni. I dati verranno caricati in elaborazione automaticamente. Ora controlliamo se abbiamo compilato correttamente i nostri dati. Per fare ciò, fare clic sul pulsante "Controllo riempimento".

Come puoi vedere, abbiamo degli errori! Lo elimineremo. Vai alla scheda “Impostazioni”:

Prima di correggere gli errori, prestiamo attenzione a un dettaglio importante. Il programma inizialmente non sa in quale campo cercare un elemento della directory nel caso in cui sia già presente. Pertanto è necessario che lo indichi. Ad esempio, cerchiamo per codice, poiché solitamente è univoco. Nella colonna "Campo di ricerca" nella riga "Codice", metti un segno di spunta. Ora, se viene trovato un record con tale codice, verrà sostituito, altrimenti verrà creato.

Importante! Se non specifichi un campo di ricerca, potrebbero essere visualizzati elementi duplicati. Soprattutto dopo il secondo download di un file simile!

Adesso vediamo perché “Unity” giura in campo. Il fatto è che le unità di misura in 1C 8.3 sono memorizzate in una directory separata e l'elaborazione per impostazione predefinita cerca questa unità per nome. Ma in realtà, la parola unità è scritta nel campo "Nome completo".

Purtroppo l'elaborazione può effettuare la ricerca solo per “Nome” e “Codice” (per il programmatore le possibilità sono più ampie). Se presti attenzione alle immagini sopra, vedrai che c'è un codice nella colonna "Unità". E nell'elaborazione è necessario indicare che la ricerca deve essere effettuata per codice. Fare doppio clic sulla colonna “Condizione di comunicazione” accanto a “Unità” e modificarla in “Codice”.

Adesso vediamo cosa ci dicono sul “Servizio” nella lista degli errori. Un'altra nota importante. Le colonne nel file devono trovarsi rigorosamente nello stesso ordine delle righe dei campi della directory. E per noi, il "Tipo di articolo" si trova in fondo e nel file dopo la colonna "Commento".

Per spostare verso l'alto la riga "Tipo articolo", sono presenti delle frecce blu nella parte superiore del modulo. Utilizzando la freccia "Su", sollevare la riga desiderata e posizionarla sotto "Commento".

Fai clic su “Carica dati” e questa volta tutto procede senza errori:

Basato su materiali da: programmist1s.ru