{"id":36968,"date":"2019-10-31T22:15:01","date_gmt":"2019-10-31T19:15:01","guid":{"rendered":"https:\/\/prohoster.info\/blog\/sposoby-integratsii-s-1s\/"},"modified":"2019-10-31T22:15:01","modified_gmt":"2019-10-31T19:15:01","slug":"sposoby-integratsii-s-1s","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/sposoby-integratsii-s-1s","title":{"rendered":"Modalit\u00e0 di integrazione con 1C","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Quali sono i requisiti principali per le applicazioni aziendali? Tra i pi\u00f9 importanti ci sono i seguenti compiti:<\/p>\n<ul>\n<li>Facilit\u00e0 di modifica\/adattamento della logica di funzionamento dell'applicazione alle mutevoli esigenze aziendali.<\/li>\n<li>Facilit\u00e0 di integrazione con altre applicazioni.<\/li>\n<\/ul>\n<p>\nIl modo in cui viene risolto il primo compito in 1C \u00e8 stato brevemente descritto nella sezione \u00abPersonalizzazione e supporto\u00bb <noindex><a rel=\"nofollow\" href=\"https:\/\/habrahabr.ru\/company\/1c\/blog\/267321\/\">di questo articolo,<\/a><\/noindex>; torneremo su questo interessante argomento in uno dei prossimi articoli. Oggi parleremo invece del secondo compito, l'integrazione.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Compiti di integrazione<\/h3>\n<p>\nI compiti di integrazione possono essere diversi. Per alcuni \u00e8 sufficiente uno scambio di dati interattivo semplice \u2013 ad esempio, per inviare alla banca l'elenco dei dipendenti per l'emissione delle carte di pagamento per salari. Per compiti pi\u00f9 complessi potrebbe essere necessario uno scambio di dati completamente automatizzato, possibilmente con riferimento alla logica aziendale di un sistema esterno. Ci sono compiti che hanno un carattere specializzato, come l'integrazione con attrezzature esterne (ad esempio, attrezzature di vendita, scanner mobili, ecc.) o con sistemi ereditati o altamente specializzati (ad esempio, con sistemi di riconoscimento di etichette RFID). \u00c8 estremamente importante per ogni compito scegliere il meccanismo di integrazione pi\u00f9 adatto.<\/p>\n<h3>Possibilit\u00e0 di integrazione con 1C<\/h3>\n<p>\nEsistono diversi approcci alla realizzazione dell'integrazione con le applicazioni 1C; quale scegliere dipende dai requisiti del compito.<\/p>\n<ol>\n<li>Implementazione basata su <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/overview\/Term_000000581.htm\">meccanismi di integrazione<\/a><\/noindex>, forniti dalla piattaforma, da un proprio API specializzato lato applicazione 1C (ad esempio, un insieme di servizi Web o HTTP che richiamano applicazioni esterne per lo scambio di dati con l'applicazione 1C). Il vantaggio di questo approccio \u00e8 la resistenza dell'API alle modifiche dell'implementazione lato applicazione 1C. La particolarit\u00e0 dell'approccio \u00e8 che \u00e8 necessario modificare il codice sorgente della soluzione standard di 1C, il che pu\u00f2 richiedere sforzi potenziali nella fusione dei codici sorgente durante il passaggio a una nuova versione della configurazione. In questo caso, pu\u00f2 risultare utile una nuova funzionalit\u00e0 progressiva \u2014 <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/overview\/Term_000000883.htm\">estensioni della configurazione<\/a><\/noindex>. Le estensioni sono, di fatto, un meccanismo di plugin che consente di creare aggiunte per soluzioni applicative senza modificare le stesse. Spostare l'API di integrazione nell'estensione di configurazione permetter\u00e0 di evitare difficolt\u00e0 durante la fusione delle configurazioni al passaggio a una nuova versione della soluzione standard.\n<\/li>\n<li>L'uso dei meccanismi di integrazione della piattaforma, che forniscono accesso dall'esterno al modello a oggetti dell'applicazione e non richiedono modifiche all'applicazione o creazione di un'estensione. Il vantaggio di questo approccio \u00e8 che non \u00e8 necessario modificare l'applicazione 1C. Lo svantaggio \u00e8 che, se l'applicazione 1C \u00e8 stata modificata, potrebbero essere necessari adattamenti nell'applicazione integrata. Un esempio di questo approccio \u00e8 l'uso del protocollo OData per l'integrazione, implementato dalla piattaforma 1C:Enterprise (maggiore dettaglio a seguire).\n<\/li>\n<li>L'uso di protocolli applicativi predefiniti, implementati nelle soluzioni standard 1C. Molte soluzioni standard di 1C e dei partner realizzano i propri protocolli applicativi basati sui meccanismi di integrazione forniti dalla piattaforma, orientati a compiti specifici. Utilizzando questi meccanismi, non \u00e8 necessaria la scrittura di codice sul lato dell'applicazione 1C, poich\u00e9 utilizziamo le funzionalit\u00e0 predefinite della soluzione applicativa. Sul lato dell'applicazione 1C, \u00e8 sufficiente eseguire alcune configurazioni.<\/li>\n<\/ol>\n<p><\/p>\n<h3>Meccanismi di integrazione nella piattaforma 1C:Enterprise<\/h3>\n<p><\/p>\n<h4>Importazione\/esportazione di file<\/h4>\n<p>\nSupponiamo che ci troviamo di fronte alla necessit\u00e0 di uno scambio bidirezionale di dati tra l'applicazione 1C e un'applicazione qualsiasi. Ad esempio, dobbiamo sincronizzare l'elenco dei prodotti (il catalogo Nomenclatura) tra l'applicazione 1C e un'applicazione qualsiasi.<\/p>\n<p><img decoding=\"async\" alt=\"Modalit\u00e0 di integrazione con 1C\" src=\"\/wp-content\/uploads\/2019\/08\/9678f09dfcf7f70de100ed74ada6019c.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nPer affrontare questa esigenza, \u00e8 possibile scrivere un'estensione che estrae il catalogo Nomenclatura in un file di un formato specifico (testo, XML, JSON, \u2026) e che \u00e8 in grado di leggere questo formato. <\/p>\n<p>Nella piattaforma \u00e8 implementato un meccanismo di serializzazione degli oggetti applicativi in XML sia direttamente, attraverso i metodi del contesto globale ScrivereXML\/LeggereXML, sia mediante un oggetto ausiliario XDTO (XML Data Transfer Objects).<\/p>\n<p>Qualsiasi oggetto nel sistema 1C:Enterprise pu\u00f2 essere serializzato in una rappresentazione XML e viceversa. <\/p>\n<p>Questa funzione restituir\u00e0 la rappresentazione dell'oggetto in formato XML:<\/p>\n<pre><code class=\"1c\">Funzione Oggetto_V_XML(Oggetto)\n    RegistrazioneXML = Nuova RegistrazioneXML();\n    RegistrazioneXML.ImpostaStringa();\n    ScriviXML(RegistrazioneXML, Oggetto);\n    Restituisci RegistrazioneXML.Chiudi();\nFineFunzione\n<\/code><\/pre>\n<p>\nquesto sar\u00e0 l'aspetto dell'esportazione del catalogo Nomenclatura in XML utilizzando XDTO:<\/p>\n<pre><code class=\"1c\">&amp;AtServer\nProcedura EsportaXMLSuServer()\t\n\tNuovoSerializzatoreXDTO  = SerializzatoreXDTO;\n\tNuovaRegistrazioneXML = Nuova RegistrazioneXML();\n\tNuovaRegistrazioneXML.ApriFile(\"C:DataNomenclatura.xml\", \"UTF-8\");\n\t\n\tNuovaRegistrazioneXML.ScriviDichiarazioneXML();\n\tNuovaRegistrazioneXML.ScriviInizioElemento(\"CatalogoNomenclatura\");\n\t\n\tSelezione = Cataloghi.Nomenclatura.Seleziona();\n\t\n\tMentre Selezione.Successivo() Fai \n\t\tOggettoNomenclatura = Selezione.OttieniOggetto();\n\t\tNuovoSerializzatoreXDTO.ScriviXML(NuovaRegistrazioneXML, OggettoNomenclatura, AssegnazioneTipoXML.Esplicita);\n\tFineCiclo;\n\t\n\tNuovaRegistrazioneXML.ScriviFineElemento();\n\tNuovaRegistrazioneXML.Chiudi();\t\nFineProcedura\n<\/code><\/pre>\n<p>\nCon una semplice modifica al codice esportiamo il catalogo in JSON. I prodotti saranno scritti in un array; per variet\u00e0, presentiamo la variante sintattica in inglese:<\/p>\n<pre><code class=\"1c\">&amp;AtServer\nProcedura EsportaJSONSuServer()\n\tNuovoSerializzatoreXDTO  = SerializzatoreXDTO;\n\tNuovoScrittoreJSON = Nuovo ScrittoreJSON();\n\tNuovoScrittoreJSON.ApriFile(\"C:DataNomenclatura.json\", \"UTF-8\");\n\t\n\tNuovoScrittoreJSON.ScriviInizioOggetto();\n\tNuovoScrittoreJSON.ScriviNomePropriet\u00e0(\"CatalogoNomenclatura\");\n\tNuovoScrittoreJSON.ScriviInizioArray();\n\t\n\tSelezione = Cataloghi.Nomenclatura.Seleziona();\t\n\t\n\tMentre Selezione.Successivo() Fai \n\t\tOggettoNomenclatura = Selezione.OttieniOggetto();\n\t\t\n\t\tNuovoScrittoreJSON.ScriviInizioOggetto();\n\t\t\n\t\tNuovoScrittoreJSON.ScriviNomePropriet\u00e0(\"Nomenclatura\");\n\t\tNuovoSerializzatoreXDTO.ScriviJSON(NuovoScrittoreJSON, OggettoNomenclatura, AssegnazioneTipoXML.Implicita);\n\t\t\n\t\tNuovoScrittoreJSON.ScriviFineOggetto();\n\tFineFai;\n\t\n\tNuovoScrittoreJSON.ScriviFineArray();\n\tNuovoScrittoreJSON.ScriviFineOggetto();\n\tNuovoScrittoreJSON.Chiudi();\t\nFineProcedura\n<\/code><\/pre>\n<p>\nRimane solo da trasferire i dati al destinatario finale. La piattaforma 1C:Enterprise supporta i principali protocolli internet HTTP, FTP, POP3, SMTP, IMAP, comprese le loro versioni sicure. \u00c8 inoltre possibile utilizzare HTTP e\/o servizi Web per il trasferimento dei dati.<\/p>\n<h4>Servizi HTTP e web<\/h4>\n<p>\n<img decoding=\"async\" alt=\"Modalit\u00e0 di integrazione con 1C\" src=\"\/wp-content\/uploads\/2019\/08\/1d4797d9298f793e19ee637fd26473b2.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Le applicazioni 1C possono implementare i propri servizi HTTP e web, cos\u00ec come invocare servizi HTTP e web implementati da applicazioni di terze parti. <\/p>\n<h4>Interfaccia REST e protocollo OData<\/h4>\n<p>\nA partire dalla versione 8.3.5, la piattaforma 1C:Enterprise pu\u00f2 automaticamente <noindex><a rel=\"nofollow\" href=\"https:\/\/wonderland.v8.1c.ru\/blog\/avtomaticheskiy-rest-interfeys-prikladnykh-resheniy\/\">generare un'interfaccia REST<\/a><\/noindex> per l'intera soluzione applicativa. Qualsiasi oggetto di configurazione (catalogo, documento, registro delle informazioni, ecc.) pu\u00f2 essere reso accessibile per ottenere e modificare i dati tramite l'interfaccia REST. Come protocollo di accesso, la piattaforma utilizza il protocollo <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Open_Data_Protocol\">OData<\/a><\/noindex> versione 3.0. La pubblicazione dei servizi OData avviene dal menu del Configuratore \u00abAmministrazione -&gt; Pubblicazione sul server web\u00bb, e la casella \u00abPubblica l'interfaccia standard OData\u00bb deve essere selezionata. Sono supportati i formati atom\/XML e JSON. Dopo che la soluzione applicativa \u00e8 stata pubblicata sul server web, i sistemi esterni possono accedervi tramite l'interfaccia REST utilizzando richieste HTTP. Per lavorare con l'applicazione 1C tramite il protocollo OData non \u00e8 necessaria alcuna programmazione dal lato 1C.<\/p>\n<p>Quindi, un URL del tipo <u>http:\/\/\/\/odata\/standard.odata\/Catalog_\u041d\u043e\u043c\u0435\u043d\u043a\u043b\u0430\u0442\u0443\u0440\u0430<\/u> rester\u00e0 il contenuto del catalogo Nomenclature in formato XML \u2014 una collezione di elementi entry (l'intestazione del messaggio \u00e8 stata omessa per brevit\u00e0):<\/p>\n<pre><code class=\"xml\">http:\/\/server\/Config\/odata\/standard.odata\/Catalog_\u041d\u043e\u043c\u0435\u043d\u043a\u043b\u0430\u0442\u0443\u0440\u0430(guid'35d1f6e4-289b-11e6-8ba4-e03f49b16074')\n\t\n\t<title \/>\n\t2016-06-06T16:42:17\n\t\n\t<summary \/>\n\t\n\t\n\t\t\n\t\t\t35d1f6e4-289b-11e6-8ba4-e03f49b16074\n\t\t\tAAAAAgAAAAA=\n\t\t\tfalse\n\t\t\t000000001\n\t\t\tCondizionatore Mitsubishi\n\t\t\tPotenza 2,5 kW, modalit\u00e0 operative: caldo\/freddo\n\t\t\n\t\n\n\n\thttp:\/\/server\/Config\/odata\/standard.odata\/Catalog_\u041d\u043e\u043c\u0435\u043d\u043a\u043b\u0430\u0442\u0443\u0440\u0430(guid'35d1f6e5-289b-11e6-8ba4-e03f49b16074')\n\t\n...\n<\/code><\/pre>\n<p>\nAggiungendo alla URL la stringa \u00ab?$format=application\/json\u00bb, otterremo il contenuto del catalogo Nomenclature in formato JSON (URL del tipo <u>http:\/\/\/\/odata\/standard.odata\/Catalog_\u041d\u043e\u043c\u0435\u043d\u043a\u043b\u0430\u0442\u0443\u0440\u0430?$format=application\/json<\/u> ):<\/p>\n<pre><code>{\n\"odata.metadata\": \"http:\/\/server\/Config\/odata\/standard.odata\/$metadata#Catalog_\u041d\u043e\u043c\u0435\u043d\u043a\u043b\u0430\u0442\u0443\u0440\u0430\",\n\"value\": [{\n\"Ref_Key\": \"35d1f6e4-289b-11e6-8ba4-e03f49b16074\",\n\"DataVersion\": \"AAAAAgAAAAA=\",\n\"DeletionMark\": false,\n\"Code\": \"000000001\",\n\"Description\": \"Condizionatore Mitsubishi\",\n\"Descrizione\": \"Potenza 2,5 kW, modalit\u00e0 operative: caldo\/freddo\"\n},{\n\"Ref_Key\": \"35d1f6e5-289b-11e6-8ba4-e03f49b16074\",\n\"DataVersion\": \"AAAAAwAAAAA=\",\n\"DeletionMark\": false,\n\"Code\": \"000000002\",\n\"Description\": \"Condizionatore Daikin\",\n\"Descrizione\": \"Potenza 3 kW, modalit\u00e0 operative: caldo\/freddo\"\n}, \u2026\n<\/code><\/pre>\n<p><\/p>\n<h4>Fonti esterne di dati<\/h4>\n<p>\n<img decoding=\"async\" alt=\"Modalit\u00e0 di integrazione con 1C\" src=\"\/wp-content\/uploads\/2019\/08\/1663b53846f3a6a8a03f386f1f6cd311.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nIn alcuni casi, lo scambio di dati avviene tramite <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/overview\/Term_000000795.htm\">fonti esterne di dati<\/a><\/noindex> pu\u00f2 risultare la soluzione ottimale. Le sorgenti esterne di dati sono un oggetto applicativo della configurazione 1C, che consente l'interazione con qualsiasi database compatibile con ODBC sia in lettura che in scrittura. Le sorgenti esterne di dati sono disponibili sia su Windows che su Linux.<\/p>\n<h4>Meccanismo di scambio dati<\/h4>\n<p>\n<noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/overview\/Term_000000269.htm\">Meccanismo di scambio dati<\/a><\/noindex> \u00e8 progettato sia per la creazione di sistemi territorialmente distribuiti basati su 1C:Enterprise, sia per organizzare lo scambio di dati con altri sistemi informativi non basati su 1C:Enterprise.<\/p>\n<p>Questo meccanismo \u00e8 ampiamente utilizzato nelle implementazioni di 1C, e l'ampiezza delle attivit\u00e0 che pu\u00f2 gestire \u00e8 piuttosto vasta. Si occupa dello scambio di dati tra le applicazioni 1C installate nelle filiali dell'organizzazione, dello scambio tra un'applicazione 1C e il sito di un negozio online, e dello scambio di dati tra l'applicazione server 1C e il client mobile (creato con la piattaforma mobile di 1C:Enterprise), e molto altro.<\/p>\n<p>Uno dei concetti chiave nel meccanismo di scambio dati \u00e8 il piano di scambio. Il piano di scambio \u00e8 un tipo speciale di oggetto applicativo della piattaforma 1C, che definisce, in particolare, l'insieme dei dati che parteciperanno allo scambio (quali esattamente sono i registri, i documenti, i registri e cos\u00ec via). Il piano di scambio contiene anche informazioni sui partecipanti allo scambio (i cosiddetti nodi di scambio).<br \/>\nLa seconda componente del meccanismo di scambio dati \u00e8 il meccanismo di registrazione delle modifiche. Questo meccanismo tiene automaticamente traccia in sistema delle modifiche ai dati che devono essere trasmesse ai consumatori finali nell'ambito del piano di scambio. Con questo meccanismo, la piattaforma monitora le modifiche avvenute dal momento dell'ultima sincronizzazione, e consente di minimizzare il volume dei dati trasmessi nell'ambito della successiva sessione di sincronizzazione.<\/p>\n<p>Lo scambio di dati avviene tramite messaggi XML di una determinata struttura. Il messaggio contiene dati che sono cambiati dal momento dell'ultima sincronizzazione con il nodo e alcune informazioni di servizio. La struttura dei messaggi supporta la numerazione dei messaggi e consente di ricevere conferme dal nodo ricevente riguardo alla ricezione dei messaggi. Tale conferma \u00e8 contenuta in ogni messaggio proveniente dal nodo ricevente, sotto forma del numero dell'ultimo messaggio ricevuto. La numerazione dei messaggi consente alla piattaforma di comprendere quali dati siano stati gi\u00e0 trasmessi con successo al nodo ricevente, evitando la trasmissione ripetuta e inviando solo i dati modificati dal momento in cui il nodo mittente ha ricevuto l'ultimo messaggio con la ricevuta dei dati ricevuti dal nodo ricevente. Con questo schema di lavoro si garantisce la consegna anche in caso di canali di trasmissione poco affidabili e perdita di messaggi.<\/p>\n<h4>Componenti esterni<\/h4>\n<p>\nIn alcuni casi, nella risoluzione di compiti di integrazione, \u00e8 necessario affrontare requisiti specifici, ad esempio protocolli di interazione, formati di dati con cui la piattaforma 1C:Enterprise non prevede di lavorare. Per questo tipo di compiti, la piattaforma prevede <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/overview\/Term_000000545.htm\">una tecnologia di componenti esterni<\/a><\/noindex>, che consente di creare moduli collegabili dinamicamente, ampliando le funzionalit\u00e0 di 1C:Enterprise. <\/p>\n<p>Un esempio tipico di compito con requisiti simili pu\u00f2 essere l'integrazione di una soluzione applicativa 1C con attrezzature commerciali, che vanno dalle bilance ai registratori di cassa e scanner di codici a barre. I componenti esterni possono essere collegati sia sul lato server di 1C:Enterprise che sul lato client (incluso, tra l'altro, il web-client e anche <noindex><a rel=\"nofollow\" href=\"https:\/\/wonderland.v8.1c.ru\/blog\/vneshnie-komponenty-v-mobilnom-prilozhenii\/\">la prossima versione della piattaforma mobile<\/a><\/noindex> 1C:Enterprise). La tecnologia dei componenti esterni prevede un'interfaccia di programmazione (C++) sufficientemente semplice e chiara per l'interazione del componente con la piattaforma 1C:Enterprise che deve essere implementata dallo sviluppatore.<\/p>\n<p>Le opportunit\u00e0 che si aprono con l'uso di componenti esterni sono piuttosto ampie. \u00c8 possibile implementare interazioni secondo un protocollo specifico di scambio dati con dispositivi e sistemi esterni, integrare algoritmi specifici di elaborazione dati e formati di dati, ecc.<\/p>\n<h4>Meccanismi di integrazione obsoleti<\/h4>\n<p>\nNella piattaforma sono disponibili meccanismi di integrazione che non si raccomanda di utilizzare in nuove soluzioni; sono stati mantenuti per motivi di compatibilit\u00e0 retroattiva e nel caso in cui l'altra parte non possa lavorare con protocolli pi\u00f9 moderni. Uno di questi \u00e8 il lavoro con file di formato DBF (supportato nel linguaggio integrato tramite l'oggetto XBase).<\/p>\n<p>Un altro meccanismo di integrazione obsoleto \u00e8 l'uso della tecnologia COM (disponibile solo sulla piattaforma Windows). La piattaforma 1C:Enterprise offre due modalit\u00e0 di integrazione per Windows che utilizzano la tecnologia COM: Automation-server e Collegamento esterno. Sono molto simili, ma una delle differenze principali \u00e8 che nel caso dell'Automation-server viene avviata un'applicazione client completa 1C:Enterprise 8, mentre nel caso del collegamento esterno viene avviato un relativamente piccolo server COM intra-processo. Cio\u00e8, nel caso di lavoro tramite il server Automation si pu\u00f2 utilizzare la funzionalit\u00e0 dell'applicazione client, eseguire azioni simili a quelle interattive dell'utente. Utilizzando il collegamento esterno, \u00e8 possibile utilizzare solo le funzioni di logica aziendale, che possono essere eseguite sia sul lato client del collegamento, dove viene creato il server COM intra-processo, sia effettuare chiamate alla logica aziendale sul lato del server 1C:Enterprise.<\/p>\n<p>Inoltre, la tecnologia COM pu\u00f2 essere utilizzata per accedere a sistemi esterni dal codice dell'applicazione sulla piattaforma 1C:Enterprise. In questo caso, l'applicazione 1C funge da client COM. Ma \u00e8 importante ricordare che questi meccanismi funzioneranno solo se il server 1C opera nell'ambiente Windows.<\/p>\n<h3>Meccanismi di integrazione realizzati in configurazioni standard<\/h3>\n<p><\/p>\n<h4>Formato EnterpriseData<\/h4>\n<p>\n<img decoding=\"async\" alt=\"Modalit\u00e0 di integrazione con 1C\" src=\"\/wp-content\/uploads\/2019\/08\/8930091e53309b9b808a719b747a6226.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nIn alcune configurazioni 1C (nell'elenco qui sotto) \u00e8 stato implementato un meccanismo di scambio dati con applicazioni esterne basato sul meccanismo di scambio dati della piattaforma descritto sopra, che non richiede modifiche al codice sorgente delle configurazioni (la preparazione allo scambio di dati avviene nelle impostazioni delle soluzioni applicative):<\/p>\n<ul>\n<li>\u00ab1C:ERP Gestione dell'Impresa 2.0\u00bb <\/li>\n<li>\u00abAutomazione Completa 2\u00bb <\/li>\n<li>\u00abContabilit\u00e0 dell'Impresa\u00bb, edizione 3.0 <\/li>\n<li>\u00abContabilit\u00e0 dell'Impresa CORP\u00bb, edizione 3.0 <\/li>\n<li>\u00abRetail\u00bb, edizione 2.0 <\/li>\n<li>\u00abGestione delle vendite base\u00bb, edizione 11 <\/li>\n<li>\u00abGestione delle vendite\u00bb, edizione 11<\/li>\n<li>\u00abStipendio e gestione del personale KORP\u00bb, edizione 3<\/li>\n<\/ul>\n<p>\nPer lo scambio di dati viene utilizzato il formato <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/edi\/edi_app\/enterprisedata\/\">EnterpriseData<\/a><\/noindex>, basato su XML. Il formato \u00e8 orientato al business \u2013 le strutture dati descritte corrispondono a entit\u00e0 aziendali (documenti e elementi di repertorio) presentate nei programmi 1C, ad esempio: atto di lavori eseguiti, ricevuta di cassa, controparte, nomenclatura, ecc.<\/p>\n<p>Lo scambio di dati tra l'applicazione 1C e un'applicazione di terze parti pu\u00f2 avvenire:<\/p>\n<ul>\n<li>attraverso una directory di file dedicata <\/li>\n<li>attraverso una directory FTP <\/li>\n<li>attraverso un servizio web implementato sul lato dell'applicazione 1C. Il file con i dati viene trasmesso come parametro dei metodi web<\/li>\n<li>tramite email<\/li>\n<\/ul>\n<p>\nIn caso di scambio tramite servizio web, l'applicazione di terze parti avvier\u00e0 la sessione di scambio dati richiamando i corrispondenti metodi web dell'applicazione 1C. Negli altri casi, l'initiatore della sessione di scambio sar\u00e0 l'applicazione 1C (inviando il file con i dati nella directory appropriata o inviando il file con i dati all'indirizzo email configurato).<br \/>\nInoltre, sul lato 1C viene impostata la periodicit\u00e0 della sincronizzazione (per le opzioni di scambio file tramite directory e email):<\/p>\n<ul>\n<li>secondo un programma (con periodicit\u00e0 impostata) <\/li>\n<li>manuale; l'utente dovr\u00e0 avviare manualmente la sincronizzazione ogni volta che ne avr\u00e0 bisogno<\/li>\n<\/ul>\n<p><\/p>\n<h5>Ricezione delle conferme<\/h5>\n<p>\nLe applicazioni 1C tengono traccia dei messaggi di sincronizzazione inviati e ricevuti e si aspettano lo stesso dalle applicazioni di terze parti. Ci\u00f2 consente di attivare il meccanismo di numerazione dei messaggi, descritto in precedenza nella sezione \u00abMeccanismo di scambio dati\u00bb.<\/p>\n<p>Le applicazioni 1C durante la sincronizzazione trasferiscono solo le informazioni sulle modifiche avvenute alle entit\u00e0 aziendali dalla ultima sincronizzazione (per minimizzare il volume dei dati trasferiti). Durante la prima sincronizzazione, l'applicazione 1C scaricher\u00e0 tutte le entit\u00e0 aziendali (ad esempio, gli elementi del catalogo di nomenclatura) nel formato EnterpriseData in un file XML (poich\u00e9 sono tutte \"nuove\" per l'applicazione esterna). L'applicazione esterna deve elaborare le informazioni dal file XML ricevuto da 1C e, durante la successiva sessione di sincronizzazione, inserire nel file inviato a 1C, in una sezione speciale XML, l'informazione che il messaggio da 1C con un determinato numero \u00e8 stato ricevuto con successo. Il messaggio di ricevuta \u00e8 per l'applicazione 1C un segnale che tutte le entit\u00e0 aziendali sono state elaborate con successo dall'applicazione esterna e non \u00e8 pi\u00f9 necessario inviare informazioni su di esse. Oltre alla ricevuta, il file XML dall'applicazione esterna pu\u00f2 contenere anche dati per la sincronizzazione da parte dell'applicazione (ad esempio, documenti di vendita di beni e servizi).<\/p>\n<p>Dopo la ricezione del messaggio di ricevuta, l'applicazione 1C contrassegna tutte le modifiche inviate nel messaggio precedente come correttamente sincronizzate. Solo le modifiche non sincronizzate alle entit\u00e0 aziendali (creazione di nuove entit\u00e0, modifica e cancellazione di quelle esistenti) saranno inviate all'applicazione esterna durante la successiva sessione di sincronizzazione.<\/p>\n<p><img decoding=\"async\" alt=\"Modalit\u00e0 di integrazione con 1C\" src=\"\/wp-content\/uploads\/2019\/08\/b0d5509a53909e38886a15c2e03e7131.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nQuando si trasferiscono dati dall'applicazione esterna all'applicazione 1C, la situazione cambia. L'applicazione esterna deve compilare la sezione di ricevuta nel file XML di conseguenza e inserire i dati aziendali da sincronizzare da parte sua nel formato EnterpriseData.<\/p>\n<p><img decoding=\"async\" alt=\"Modalit\u00e0 di integrazione con 1C\" src=\"\/wp-content\/uploads\/2019\/08\/d34b96efb7591770133b363b369c0019.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h5>Scambio semplificato di dati senza ricevuta<\/h5>\n<p>\nPer i casi di integrazione semplice, in cui \u00e8 sufficiente trasferire solo informazioni dall'applicazione esterna all'applicazione 1C e non \u00e8 necessaria la restituzione dei dati dall'applicazione 1C all'applicazione esterna (ad esempio, integrazione di un negozio online che trasferisce informazioni sulle vendite a \"1C: Contabilit\u00e0\"), \u00e8 disponibile una variante semplificata di lavoro tramite un web service (senza ricevuta), che non richiede impostazioni dal lato dell'applicazione 1C.<\/p>\n<h4>Soluzioni di integrazione specializzate<\/h4>\n<p>\nEsiste una soluzione standard \u00ab1C:Conversione dei dati\u00bb, che utilizza i meccanismi della piattaforma per la conversione e lo scambio dei dati tra configurazioni standard di 1C, ma pu\u00f2 essere anche utilizzata per l'integrazione con applicazioni di terze parti.<\/p>\n<h5>Integrazione con soluzioni bancarie<\/h5>\n<p>\nStandard <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/edi\/edi_stnd\/100\/index.htm\">\u00abClient Bank\u00bb<\/a><\/noindex>, sviluppato da specialisti di 1C oltre 10 anni fa, \u00e8 di fatto diventato uno standard del settore in Russia. Il passo successivo in questa direzione \u00e8 la tecnologia <noindex><a rel=\"nofollow\" href=\"http:\/\/directbank.1c.ru\/\">DirectBank<\/a><\/noindex>, che consente di inviare documenti di pagamento alla banca e ricevere estratti conto direttamente dai programmi del sistema \u00ab1C:Enterprise\u00bb con la pressione di un pulsante nel programma \u00ab1C\u00bb; non \u00e8 necessaria l'installazione e l'esecuzione di programmi aggiuntivi sul computer client. <\/p>\n<p>Esiste anche <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/edi\/edi_stnd\/109\/\">uno standard per lo scambio di dati nei progetti salariali<\/a><\/noindex>.<\/p>\n<h5>Altro<\/h5>\n<p>\nMeritano di essere menzionati <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/edi\/edi_stnd\/131\/\">il protocollo di scambio tra il sistema 1C:Enterprise e il sito<\/a><\/noindex>, standard di scambio di informazioni commerciali <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/edi\/edi_stnd\/90\/\">CommerceML<\/a><\/noindex> (sviluppato congiuntamente con Microsoft, Intel, Price.ru e altre aziende), <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/edi\/edi_stnd\/111\/\">standard di scambio di dati per le operazioni di acquisizione<\/a><\/noindex>.<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/1c\/blog\/308420\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u0430\u043a\u0438\u0435 \u0432\u0430\u0436\u043d\u0435\u0439\u0448\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u044a\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a \u0431\u0438\u0437\u043d\u0435\u0441-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c? \u041e\u0434\u043d\u0438\u043c\u0438 \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u0433\u043b\u0430\u0432\u043d\u044b\u0445 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438: \u041b\u0435\u0433\u043a\u043e\u0441\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\/\u0430\u0434\u0430\u043f\u0442\u0430\u0446\u0438\u0438 \u043b\u043e\u0433\u0438\u043a\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043a \u043c\u0435\u043d\u044f\u044e\u0449\u0438\u043c\u0441\u044f \u0431\u0438\u0437\u043d\u0435\u0441-\u0437\u0430\u0434\u0430\u0447\u0430\u043c. \u041b\u0435\u0433\u043a\u043e\u0441\u0442\u044c \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438. \u0422\u043e, \u043a\u0430\u043a \u0440\u0435\u0448\u0430\u0435\u0442\u0441\u044f \u0432 1\u0421 \u043f\u0435\u0440\u0432\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430, \u0431\u044b\u043b\u043e \u043a\u0440\u0430\u0442\u043a\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u00ab\u041a\u0430\u0441\u0442\u043e\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430\u00bb \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438; \u043c\u044b \u0435\u0449\u0435 \u0432\u0435\u0440\u043d\u0435\u043c\u0441\u044f \u043a \u044d\u0442\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0439 \u0442\u0435\u043c\u0435 \u0432 \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0431\u0443\u0434\u0443\u0449\u0438\u0445 \u0441\u0442\u0430\u0442\u0435\u0439. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":27703,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-36968","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u0430\u043a\u0438\u0435 \u0432\u0430\u0436\u043d\u0435\u0439\u0448\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u044a\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a \u0431\u0438\u0437\u043d\u0435\u0441-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c?\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/sposoby-integratsii-s-1s\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0421\u043f\u043e\u0441\u043e\u0431\u044b \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 1\u0421 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u0430\u043a\u0438\u0435 \u0432\u0430\u0436\u043d\u0435\u0439\u0448\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u044a\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a \u0431\u0438\u0437\u043d\u0435\u0441-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c?\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/sposoby-integratsii-s-1s\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:15:01+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:15:01+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Metodi di integrazione con 1C | ProHoster","description":"Quali sono i requisiti principali per le applicazioni aziendali?","canonical_url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/sposoby-integratsii-s-1s","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0421\u043f\u043e\u0441\u043e\u0431\u044b \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 1\u0421 | ProHoster","og:description":"\u041a\u0430\u043a\u0438\u0435 \u0432\u0430\u0436\u043d\u0435\u0439\u0448\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u044a\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a \u0431\u0438\u0437\u043d\u0435\u0441-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c?","og:url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/sposoby-integratsii-s-1s","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:15:01+00:00","article:modified_time":"2019-10-31T19:15:01+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"36968","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 05:33:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:35:27","updated":"2026-01-22 05:33:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/36968","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=36968"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/36968\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/27703"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=36968"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=36968"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=36968"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}