Modalità di integrazione con 1C

Quali sono i requisiti principali per le applicazioni aziendali? Tra i più importanti ci sono i seguenti compiti:

  • Facilità di modifica/adattamento della logica di funzionamento dell'applicazione alle mutevoli esigenze aziendali.
  • Facilità di integrazione con altre applicazioni.

Il modo in cui viene risolto il primo compito in 1C è stato brevemente descritto nella sezione «Personalizzazione e supporto» di questo articolo,; torneremo su questo interessante argomento in uno dei prossimi articoli. Oggi parleremo invece del secondo compito, l'integrazione.

Compiti di integrazione

I compiti di integrazione possono essere diversi. Per alcuni è sufficiente uno scambio di dati interattivo semplice – ad esempio, per inviare alla banca l'elenco dei dipendenti per l'emissione delle carte di pagamento per salari. Per compiti più 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). È estremamente importante per ogni compito scegliere il meccanismo di integrazione più adatto.

Possibilità di integrazione con 1C

Esistono diversi approcci alla realizzazione dell'integrazione con le applicazioni 1C; quale scegliere dipende dai requisiti del compito.

  1. Implementazione basata su meccanismi di integrazione, 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 è la resistenza dell'API alle modifiche dell'implementazione lato applicazione 1C. La particolarità dell'approccio è che è necessario modificare il codice sorgente della soluzione standard di 1C, il che può richiedere sforzi potenziali nella fusione dei codici sorgente durante il passaggio a una nuova versione della configurazione. In questo caso, può risultare utile una nuova funzionalità progressiva — estensioni della configurazione. 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à di evitare difficoltà durante la fusione delle configurazioni al passaggio a una nuova versione della soluzione standard.
  2. 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 è che non è necessario modificare l'applicazione 1C. Lo svantaggio è che, se l'applicazione 1C è stata modificata, potrebbero essere necessari adattamenti nell'applicazione integrata. Un esempio di questo approccio è l'uso del protocollo OData per l'integrazione, implementato dalla piattaforma 1C:Enterprise (maggiore dettaglio a seguire).
  3. 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 è necessaria la scrittura di codice sul lato dell'applicazione 1C, poiché utilizziamo le funzionalità predefinite della soluzione applicativa. Sul lato dell'applicazione 1C, è sufficiente eseguire alcune configurazioni.

Meccanismi di integrazione nella piattaforma 1C:Enterprise

Importazione/esportazione di file

Supponiamo che ci troviamo di fronte alla necessità 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.

Modalità di integrazione con 1C
Per affrontare questa esigenza, è possibile scrivere un'estensione che estrae il catalogo Nomenclatura in un file di un formato specifico (testo, XML, JSON, …) e che è in grado di leggere questo formato.

Nella piattaforma è 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).

Qualsiasi oggetto nel sistema 1C:Enterprise può essere serializzato in una rappresentazione XML e viceversa.

Questa funzione restituirà la rappresentazione dell'oggetto in formato XML:

Funzione Oggetto_V_XML(Oggetto)
    RegistrazioneXML = Nuova RegistrazioneXML();
    RegistrazioneXML.ImpostaStringa();
    ScriviXML(RegistrazioneXML, Oggetto);
    Restituisci RegistrazioneXML.Chiudi();
FineFunzione

questo sarà l'aspetto dell'esportazione del catalogo Nomenclatura in XML utilizzando XDTO:

&AtServer
Procedura EsportaXMLSuServer()	
	NuovoSerializzatoreXDTO  = SerializzatoreXDTO;
	NuovaRegistrazioneXML = Nuova RegistrazioneXML();
	NuovaRegistrazioneXML.ApriFile("C:DataNomenclatura.xml", "UTF-8");
	
	NuovaRegistrazioneXML.ScriviDichiarazioneXML();
	NuovaRegistrazioneXML.ScriviInizioElemento("CatalogoNomenclatura");
	
	Selezione = Cataloghi.Nomenclatura.Seleziona();
	
	Mentre Selezione.Successivo() Fai 
		OggettoNomenclatura = Selezione.OttieniOggetto();
		NuovoSerializzatoreXDTO.ScriviXML(NuovaRegistrazioneXML, OggettoNomenclatura, AssegnazioneTipoXML.Esplicita);
	FineCiclo;
	
	NuovaRegistrazioneXML.ScriviFineElemento();
	NuovaRegistrazioneXML.Chiudi();	
FineProcedura

Con una semplice modifica al codice esportiamo il catalogo in JSON. I prodotti saranno scritti in un array; per varietà, presentiamo la variante sintattica in inglese:

&AtServer
Procedura EsportaJSONSuServer()
	NuovoSerializzatoreXDTO  = SerializzatoreXDTO;
	NuovoScrittoreJSON = Nuovo ScrittoreJSON();
	NuovoScrittoreJSON.ApriFile("C:DataNomenclatura.json", "UTF-8");
	
	NuovoScrittoreJSON.ScriviInizioOggetto();
	NuovoScrittoreJSON.ScriviNomeProprietà("CatalogoNomenclatura");
	NuovoScrittoreJSON.ScriviInizioArray();
	
	Selezione = Cataloghi.Nomenclatura.Seleziona();	
	
	Mentre Selezione.Successivo() Fai 
		OggettoNomenclatura = Selezione.OttieniOggetto();
		
		NuovoScrittoreJSON.ScriviInizioOggetto();
		
		NuovoScrittoreJSON.ScriviNomeProprietà("Nomenclatura");
		NuovoSerializzatoreXDTO.ScriviJSON(NuovoScrittoreJSON, OggettoNomenclatura, AssegnazioneTipoXML.Implicita);
		
		NuovoScrittoreJSON.ScriviFineOggetto();
	FineFai;
	
	NuovoScrittoreJSON.ScriviFineArray();
	NuovoScrittoreJSON.ScriviFineOggetto();
	NuovoScrittoreJSON.Chiudi();	
FineProcedura

Rimane 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. È inoltre possibile utilizzare HTTP e/o servizi Web per il trasferimento dei dati.

Servizi HTTP e web

Modalità di integrazione con 1C

Le applicazioni 1C possono implementare i propri servizi HTTP e web, così come invocare servizi HTTP e web implementati da applicazioni di terze parti.

Interfaccia REST e protocollo OData

A partire dalla versione 8.3.5, la piattaforma 1C:Enterprise può automaticamente generare un'interfaccia REST per l'intera soluzione applicativa. Qualsiasi oggetto di configurazione (catalogo, documento, registro delle informazioni, ecc.) può essere reso accessibile per ottenere e modificare i dati tramite l'interfaccia REST. Come protocollo di accesso, la piattaforma utilizza il protocollo OData versione 3.0. La pubblicazione dei servizi OData avviene dal menu del Configuratore «Amministrazione -> Pubblicazione sul server web», e la casella «Pubblica l'interfaccia standard OData» deve essere selezionata. Sono supportati i formati atom/XML e JSON. Dopo che la soluzione applicativa è 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 è necessaria alcuna programmazione dal lato 1C.

Quindi, un URL del tipo http:////odata/standard.odata/Catalog_Номенклатура resterà il contenuto del catalogo Nomenclature in formato XML — una collezione di elementi entry (l'intestazione del messaggio è stata omessa per brevità):

http://server/Config/odata/standard.odata/Catalog_Номенклатура(guid'35d1f6e4-289b-11e6-8ba4-e03f49b16074')
	
	
	2016-06-06T16:42:17
	
	<summary />
	
	
		
			35d1f6e4-289b-11e6-8ba4-e03f49b16074
			AAAAAgAAAAA=
			false
			000000001
			Condizionatore Mitsubishi
			Potenza 2,5 kW, modalità operative: caldo/freddo
		
	


	http://server/Config/odata/standard.odata/Catalog_Номенклатура(guid'35d1f6e5-289b-11e6-8ba4-e03f49b16074')
	
...
</code></pre><p> Aggiungendo alla URL la stringa «?$format=application/json», otterremo il contenuto del catalogo Nomenclature in formato JSON (URL del tipo <u>http:////odata/standard.odata/Catalog_Номенклатура?$format=application/json</u> ):</p><pre><code>{
"odata.metadata": "http://server/Config/odata/standard.odata/$metadata#Catalog_Номенклатура",
"value": [{
"Ref_Key": "35d1f6e4-289b-11e6-8ba4-e03f49b16074",
"DataVersion": "AAAAAgAAAAA=",
"DeletionMark": false,
"Code": "000000001",
"Description": "Condizionatore Mitsubishi",
"Descrizione": "Potenza 2,5 kW, modalità operative: caldo/freddo"
},{
"Ref_Key": "35d1f6e5-289b-11e6-8ba4-e03f49b16074",
"DataVersion": "AAAAAwAAAAA=",
"DeletionMark": false,
"Code": "000000002",
"Description": "Condizionatore Daikin",
"Descrizione": "Potenza 3 kW, modalità operative: caldo/freddo"
}, …
</code></pre><p></p><h4>Fonti esterne di dati</h4><p> <img class=lazy decoding=async alt="Modalità di integrazione con 1C" src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20600%20436%22%3E%3C%2Fsvg%3E data-src=/wp-content/uploads/2019/08/1663b53846f3a6a8a03f386f1f6cd311.jpeg style="display:block;margin: 0 auto;" width=600 height=436><br> In 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ò 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><h4>Meccanismo di scambio dati</h4><p> <noindex><a rel=nofollow href=http://v8.1c.ru/overview/Term_000000269.htm>Meccanismo di scambio dati</a></noindex> è 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><p>Questo meccanismo è ampiamente utilizzato nelle implementazioni di 1C, e l'ampiezza delle attività che può gestire è 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><p>Uno dei concetti chiave nel meccanismo di scambio dati è il piano di scambio. Il piano di scambio è 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ì via). Il piano di scambio contiene anche informazioni sui partecipanti allo scambio (i cosiddetti nodi di scambio).<br> La seconda componente del meccanismo di scambio dati è 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><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 è 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à 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><h4>Componenti esterni</h4><p> In alcuni casi, nella risoluzione di compiti di integrazione, è 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à di 1C:Enterprise.</p><p>Un esempio tipico di compito con requisiti simili può 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><p>Le opportunità che si aprono con l'uso di componenti esterni sono piuttosto ampie. È 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><h4>Meccanismi di integrazione obsoleti</h4><p> Nella piattaforma sono disponibili meccanismi di integrazione che non si raccomanda di utilizzare in nuove soluzioni; sono stati mantenuti per motivi di compatibilità retroattiva e nel caso in cui l'altra parte non possa lavorare con protocolli più moderni. Uno di questi è il lavoro con file di formato DBF (supportato nel linguaggio integrato tramite l'oggetto XBase).</p><p>Un altro meccanismo di integrazione obsoleto è l'uso della tecnologia COM (disponibile solo sulla piattaforma Windows). La piattaforma 1C:Enterprise offre due modalità di integrazione per Windows che utilizzano la tecnologia COM: Automation-server e Collegamento esterno. Sono molto simili, ma una delle differenze principali è 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è, nel caso di lavoro tramite il server Automation si può utilizzare la funzionalità dell'applicazione client, eseguire azioni simili a quelle interattive dell'utente. Utilizzando il collegamento esterno, è 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><p>Inoltre, la tecnologia COM può 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 è importante ricordare che questi meccanismi funzioneranno solo se il server 1C opera nell'ambiente Windows.</p><h3>Meccanismi di integrazione realizzati in configurazioni standard</h3><p></p><h4>Formato EnterpriseData</h4><p> <img class=lazy decoding=async alt="Modalità di integrazione con 1C" src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20600%20311%22%3E%3C%2Fsvg%3E data-src=/wp-content/uploads/2019/08/8930091e53309b9b808a719b747a6226.jpeg style="display:block;margin: 0 auto;" width=600 height=311><br> In alcune configurazioni 1C (nell'elenco qui sotto) è 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><ul> <li>«1C:ERP Gestione dell'Impresa 2.0» </li> <li>«Automazione Completa 2» </li> <li>«Contabilità dell'Impresa», edizione 3.0 </li> <li>«Contabilità dell'Impresa CORP», edizione 3.0 </li> <li>«Retail», edizione 2.0 </li> <li>«Gestione delle vendite base», edizione 11 </li> <li>«Gestione delle vendite», edizione 11</li> <li>«Stipendio e gestione del personale KORP», edizione 3</li></ul><p> Per 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 è orientato al business – le strutture dati descritte corrispondono a entità aziendali (documenti e elementi di repertorio) presentate nei programmi 1C, ad esempio: atto di lavori eseguiti, ricevuta di cassa, controparte, nomenclatura, ecc.</p><p>Lo scambio di dati tra l'applicazione 1C e un'applicazione di terze parti può avvenire:</p><ul> <li>attraverso una directory di file dedicata </li> <li>attraverso una directory FTP </li> <li>attraverso un servizio web implementato sul lato dell'applicazione 1C. Il file con i dati viene trasmesso come parametro dei metodi web</li> <li>tramite email</li></ul><p> In caso di scambio tramite servizio web, l'applicazione di terze parti avvierà la sessione di scambio dati richiamando i corrispondenti metodi web dell'applicazione 1C. Negli altri casi, l'initiatore della sessione di scambio sarà l'applicazione 1C (inviando il file con i dati nella directory appropriata o inviando il file con i dati all'indirizzo email configurato).<br> Inoltre, sul lato 1C viene impostata la periodicità della sincronizzazione (per le opzioni di scambio file tramite directory e email):</p><ul> <li>secondo un programma (con periodicità impostata) </li> <li>manuale; l'utente dovrà avviare manualmente la sincronizzazione ogni volta che ne avrà bisogno</li></ul><p></p><h5>Ricezione delle conferme</h5><p> Le applicazioni 1C tengono traccia dei messaggi di sincronizzazione inviati e ricevuti e si aspettano lo stesso dalle applicazioni di terze parti. Ciò consente di attivare il meccanismo di numerazione dei messaggi, descritto in precedenza nella sezione «Meccanismo di scambio dati».</p><p>Le applicazioni 1C durante la sincronizzazione trasferiscono solo le informazioni sulle modifiche avvenute alle entità aziendali dalla ultima sincronizzazione (per minimizzare il volume dei dati trasferiti). Durante la prima sincronizzazione, l'applicazione 1C scaricherà tutte le entità aziendali (ad esempio, gli elementi del catalogo di nomenclatura) nel formato EnterpriseData in un file XML (poiché 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 è stato ricevuto con successo. Il messaggio di ricevuta è per l'applicazione 1C un segnale che tutte le entità aziendali sono state elaborate con successo dall'applicazione esterna e non è più necessario inviare informazioni su di esse. Oltre alla ricevuta, il file XML dall'applicazione esterna può contenere anche dati per la sincronizzazione da parte dell'applicazione (ad esempio, documenti di vendita di beni e servizi).</p><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à aziendali (creazione di nuove entità, modifica e cancellazione di quelle esistenti) saranno inviate all'applicazione esterna durante la successiva sessione di sincronizzazione.</p><p><img class=lazy decoding=async alt="Modalità di integrazione con 1C" src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20600%20381%22%3E%3C%2Fsvg%3E data-src=/wp-content/uploads/2019/08/b0d5509a53909e38886a15c2e03e7131.jpeg style="display:block;margin: 0 auto;" width=600 height=381><br> Quando 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><p><img class=lazy decoding=async alt="Modalità di integrazione con 1C" src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20600%20381%22%3E%3C%2Fsvg%3E data-src=/wp-content/uploads/2019/08/d34b96efb7591770133b363b369c0019.jpeg style="display:block;margin: 0 auto;" width=600 height=381></p><h5>Scambio semplificato di dati senza ricevuta</h5><p> Per i casi di integrazione semplice, in cui è sufficiente trasferire solo informazioni dall'applicazione esterna all'applicazione 1C e non è 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à"), è disponibile una variante semplificata di lavoro tramite un web service (senza ricevuta), che non richiede impostazioni dal lato dell'applicazione 1C.</p><h4>Soluzioni di integrazione specializzate</h4><p> Esiste una soluzione standard «1C:Conversione dei dati», che utilizza i meccanismi della piattaforma per la conversione e lo scambio dei dati tra configurazioni standard di 1C, ma può essere anche utilizzata per l'integrazione con applicazioni di terze parti.</p><h5>Integrazione con soluzioni bancarie</h5><p> Standard <noindex><a rel=nofollow href=http://v8.1c.ru/edi/edi_stnd/100/index.htm>«Client Bank»</a></noindex>, sviluppato da specialisti di 1C oltre 10 anni fa, è di fatto diventato uno standard del settore in Russia. Il passo successivo in questa direzione è 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 «1C:Enterprise» con la pressione di un pulsante nel programma «1C»; non è necessaria l'installazione e l'esecuzione di programmi aggiuntivi sul computer client.</p><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><h5>Altro</h5><p> Meritano 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> <br>Fonte: <a content=nofollow rel=nofollow href=https://habr.com/ru/company/1c/blog/308420/ >habr.com</a></p></div></article><div style="width: 100%; text-align: center; margin: 0; padding: 31px 0 0 0;"> <a href=https://prohoster.info/it/vps/ > <img class=lazy src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20700%2086%22%3E%3C%2Fsvg%3E data-src=https://prohoster.info/wp-content/uploads/2025/10/photo_2025-10-27_14-51-22.webp data-srcset="        https://prohoster.info/wp-content/uploads/2025/10/photo_2025-10-27_14-51-22-350.webp 350w,        https://prohoster.info/wp-content/uploads/2025/10/photo_2025-10-27_14-51-22.webp 1280w" data-sizes="(max-width: 768px) 90vw, 700px" alt="ProHoster VPS - VPS server accessibili e affidabili con accesso root completo." title="ProHoster VPS - VPS server accessibili e affidabili con accesso root completo." style="display: inline-block; height: auto; max-width: 100%;" width=700 height=86> </a></div></div><nav class="navigation post-navigation" aria-label=Articoli data-no-translation-aria-label><h2 class="screen-reader-text" data-no-translation="" data-trp-gettext="">Navigazione articoli</h2><div class=nav-links><div class=nav-previous><a href=https://prohoster.info/it/blog/administrirovanie/lte-kak-simvol-nezavisimosti rel=prev>LTE come simbolo di indipendenza</a></div><div class=nav-next><a href=https://prohoster.info/it/blog/administrirovanie/podnimaem-server-1s-s-publikatsiej-bazy-i-veb-servisov-na-linux rel=next>Solleviamo il server 1C con la pubblicazione del database e dei servizi web su Linux</a></div></div></nav></main></div></div></div><footer id=colophon class=site-footer><div class=container><div class="row between-sm"><div class="col-md-3 col-xs-12"><div id=nav_menu-9 class="widget widget_nav_menu"><h3 class="widget-title">I nostri servizi</h3><div class=menu-menyu-v-futere-v-vidzhete-1-russkij-container><ul id=menu-menyu-v-futere-v-vidzhete-1-russkij-1 class=menu><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-121326"><a href=https://prohoster.info/it/hosting/unlim-khosting>Hosting illimitato per siti web</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-172"><a href=https://prohoster.info/it/zhashchita-ot-ddos>Protezione dagli attacchi DDoS</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-169"><a href=https://prohoster.info/it/hosting/constructor>Website builder</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-175"><a href=https://prohoster.info/it/control-panel>Pannelli di controllo</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-173"><a href=https://prohoster.info/it/domain>Registrazione domini</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-108824"><a href=https://prohoster.info/it/ssl-sertifikat>Certificati SSL</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-123573"><a href=https://prohoster.info/it/vpn>VPN</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-170"><a href=https://prohoster.info/it/vps/ssd-vps>VPS, VDS</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-171"><a href=https://prohoster.info/it/vps/abuzoustojchivye-vps>Windows VPS</a></li></ul></div></div></div><div class="col-md-3 col-sm-6 col-xs-12"><div id=nav_menu-10 class="widget widget_nav_menu"><h3 class="widget-title">Informazioni</h3><div class=menu-menyu-v-futere-v-vidzhete-2-russkij-vtoroe-menyu-v-podvale-container><ul id=menu-menyu-v-futere-v-vidzhete-2-russkij-vtoroe-menyu-v-podvale class=menu><li id=menu-item-153465 class="menu-item menu-item-type-post_type menu-item-object-page menu-item-153465"><a href=https://prohoster.info/it/kompaniya/partnerstvo>Partnership</a></li> <li id=menu-item-153466 class="menu-item menu-item-type-post_type menu-item-object-page menu-item-153466"><a href=https://prohoster.info/it/bonus-partner>Bonus dai partner</a></li> <li id=menu-item-153467 class="menu-item menu-item-type-custom menu-item-object-custom menu-item-153467"><a href="https://billing.prohoster.info/knowledgebase?language=english">Knowledge base</a></li> <li id=menu-item-153468 class="menu-item menu-item-type-post_type menu-item-object-page menu-item-153468"><a href=https://prohoster.info/it/kompaniya>Chi siamo</a></li> <li id=menu-item-153471 class="menu-item menu-item-type-post_type menu-item-object-page menu-item-153471"><a href=https://prohoster.info/it/kompaniya/terms-of-service>Termini di servizio</a></li> <li id=menu-item-153469 class="menu-item menu-item-type-post_type menu-item-object-page menu-item-153469"><a href=https://prohoster.info/it/kompaniya/privacy-policy>Informativa sulla privacy</a></li> <li id=menu-item-153470 class="menu-item menu-item-type-custom menu-item-object-custom menu-item-153470"><a href=https://prohoster.info/it/kompaniya/terms-of-service/#refund>Politica di rimborso</a></li> <li id=menu-item-155022 class="menu-item menu-item-type-post_type menu-item-object-page menu-item-155022"><a href=https://prohoster.info/it/kompaniya/data-centers>Data center</a></li> <li id=menu-item-154840 class="menu-item menu-item-type-post_type menu-item-object-page menu-item-154840"><a href=https://prohoster.info/it/kompaniya/service-level-agreement>SLA</a></li> <li id=menu-item-155009 class="menu-item menu-item-type-custom menu-item-object-custom menu-item-155009"><a href="https://billing.prohoster.info/submitticket.php?step=2&deptid=1&language=english">Segnala abuso</a></li> <li id=menu-item-183801 class="menu-item menu-item-type-custom menu-item-object-custom menu-item-183801"><a href=https://status.prohoster.info>Stato della rete</a></li></ul></div></div></div><div class="col-md-3 col-sm-6 col-xs-12"><div id=nav_menu-11 class="widget widget_nav_menu"><h3 class="widget-title">Supporto</h3><div class=menu-menyu-v-futere-v-vidzhete-3-russkij-container><ul id=menu-menyu-v-futere-v-vidzhete-3-russkij class=menu><li id=menu-item-188 class="menu-btn-billing menu-item menu-item-type-custom menu-item-object-custom menu-item-188"><a rel=nofollow href=https://billing.prohoster.info/login>Pannello di fatturazione</a></li> <li id=menu-item-189 class="menu-btn-mail menu-item menu-item-type-custom menu-item-object-custom menu-item-189"><a rel=nofollow href=mailto:support@prohoster.info>support@prohoster.info</a></li> <li id=menu-item-108822 class="menu-btn-location menu-item menu-item-type-custom menu-item-object-custom menu-item-108822"><a rel=nofollow href=#>IT WEB LTD (N. Reg. 2088463) Intershore Chambers, Road Town, Tortola, P.O. Box 4342, BVI</a></li> <li id=menu-item-183620 class="menu-btn-location menu-item menu-item-type-custom menu-item-object-custom menu-item-183620"><a rel=nofollow href=#>Operazioni NL: Tulpenstraat 6, Meppel, Paesi Bassi</a></li></ul></div></div><div id=custom_html-19 class="widget_text widget widget_custom_html"><div class="textwidget custom-html-widget"><style>.awards-wrapper{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;max-width:340px;margin:0
auto}.awards-wrapper
img{width:105px;height:105px;object-fit:contain}</style><div class=awards-wrapper> <a href=https://hostadvice.com/hosting-company/prohoster-reviews/ rel=nofollow target=_blank> <img class=lazy src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3C%2Fsvg%3E data-src=https://hostadvice.com/awards/great-uptime.png alt="Recensioni ProHoster"> </a><a href=https://hostadvice.com/hosting-company/prohoster-reviews/ target=_blank rel=nofollow> <img class=lazy src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3C%2Fsvg%3E data-src=https://hostadvice.com/awards/2021-top-10-shared-hosting.png alt="Recensioni ProHoster"> </a><div class=sf-root data-id=3473357 data-badge=most-loved data-variant-id=tbs style="width:125px;transform: scale(1.15);"> <a href=https://topbusinesssoftware.com/products/ProHoster/reviews/ target=_blank>Recensioni ProHoster</a></div> <script>(function(){var sc=document.createElement('script');sc.async=true;sc.src='https://b.sf-syn.com/badge_js?sf_id=3473357&variant_id=tbs';var p=document.getElementsByTagName('script')[0];p.parentNode.insertBefore(sc,p);})();</script> <a href=https://sourceforge.net/software/product/ProHoster/ target=_blank rel="noopener nofollow"> <img class=lazy src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3C%2Fsvg%3E data-src="https://b.sf-syn.com/badge_img/3473357/heart-badge-white?variant_id=sf&f=png" alt="Recensioni ProHoster"> </a></div></div></div></div><div class="col-md-3 col-xs-12"><div id=custom_html-4 class="widget_text widget widget_custom_html"><h3 class="widget-title">Accettiamo</h3><div class="textwidget custom-html-widget"><style>.image-row{display:flex;flex-wrap:wrap;justify-content:space-between}.image-row
a{width:18%}.image-row
img{width:100%;height:auto}</style><div class=image-row> <a href=https://www.visa.com rel=nofollow> <img style="width: 55px; height: 35px;" title="Accettiamo Visa" src=/wp-content/uploads/payment-logos/visa.svg alt=visa1> </a> <a href=https://www.mastercard.com/index.html rel=nofollow> <img style="width: 55px; height: 35px;" title="Accettiamo MasterCard" src=/wp-content/uploads/payment-logos/mastercard.svg alt=master2> </a> <a href=https://pay.google.com rel=nofollow> <img style="width: 55px; height: 35px;" title="Accettiamo GPay" src=/wp-content/uploads/payment-logos/google-pay.svg alt=GPay> </a> <a href=https://apple.com rel=nofollow> <img style="width: 55px; height: 35px;" title="Accettiamo Apple Pay" src=/wp-content/uploads/payment-logos/apple-pay.svg alt="Apple Pay"> </a> <a href=# rel=nofollow> <img style="width: 55px; height: 35px;" class=alignnone title="Accettiamo Crypto" src=https://prohoster.info/wp-content/uploads/payment-logos/crypto.svg alt="Pagamento in criptovaluta"> </a></div></div></div><div id=custom_html-25 class="widget_text widget widget_custom_html"><h3 class="widget-title">Unisciti a noi</h3><div class="textwidget custom-html-widget"><div class=social-links> <a href=https://www.youtube.com/@prohoster_info target=_blank rel=nofollow aria-label=YouTube> <img class=lazy src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3C%2Fsvg%3E data-src=/wp-content/uploads/social/youtube-icon.webp alt=YouTube title="Siamo su YouTube"> </a> <a href=https://www.facebook.com/prohoster/ target=_blank rel=nofollow aria-label=Facebook> <img class=lazy src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3C%2Fsvg%3E data-src=/wp-content/uploads/social/facebook-icon.webp alt=Facebook title="Siamo su Facebook"> </a> <a href=https://t.me/prohoster_news target=_blank rel=nofollow aria-label=Telegram> <img class=lazy src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3C%2Fsvg%3E data-src=/wp-content/uploads/social/telegram-icon.webp alt=Telegram title="Siamo su Telegram"> </a> <a href=https://www.tiktok.com/@prohoster.info target=_blank rel=nofollow aria-label=tiktok> <img class=lazy src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3C%2Fsvg%3E data-src=/wp-content/uploads/social/tiktok1-icon.webp alt=tiktok title="Siamo su tiktok"> </a></div><style>.social-links{display:grid;grid-template-columns:repeat(4, 1fr);gap:15px 10px;justify-items:center;max-width:300px;margin:0
auto}.social-links
img{width:28px;height:28px;object-fit:contain;transition:transform 0.2s ease}.social-links img:hover{transform:scale(1.15)}</style></div></div><div id=custom_html-20 class="widget_text widget widget_custom_html"><div class="textwidget custom-html-widget"><style>.awards-wrapper-2{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;max-width:240px;margin:0
auto}.awards-wrapper-2
img{width:105px;height:auto;object-fit:contain}</style><div class=awards-wrapper-2 style="    margin-top: 107px;"> <a href=https://ru.hostings.info/prohoster.html target=_blank rel=nofollow> <img class=lazy src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3C%2Fsvg%3E data-src=https://ru.hostings.info/informers/cache/730-11-blue.png alt="Recensioni dei clienti su Hostings.info" title="Recensioni dei clienti - si apre in una nuova finestra"> </a><a href=https://hostadvice.com/hosting-company/prohoster-reviews/ rel=nofollow target=_blank> <img class=lazy src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201%201%22%3E%3C%2Fsvg%3E data-src=https://hostadvice.com/awards/2022-top25-dedicated-hosting.png alt="Recensioni ProHoster"> </a></div></div></div><div id=block-2 class="widget widget_block widget_text"><p class=wp-block-paragraph></p></div></div></div></div><div class=site-info><div class=container><div class=row><div class="col-md-12 text-center-xs"><div class="textwidget custom-html-widget"><a href="https://apps.db.ripe.net/db-web-ui/lookup?source=ripe&key=ORG-IWL5-RIPE&type=organisation" target=_blank rel=nofollow> <img class=" lazy" src=data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2088%2031%22%3E%3C%2Fsvg%3E data-src=/wp-content/uploads/ripe-ncc-m-w.png alt=ripe-ncc-m-w width=88 height=31> </a></div><div class="textwidget custom-html-widget"><div data-submi-badges=bk_R8PRdHn3TQFt-vxA data-submi-size=small data-submi-layout=scroll style="    max-width: 50%;    /* vector-effect: non-scaling-stroke; */    margin: 0 auto;"> … 99 collegamenti directory …</div> <script src=https://app.submi.io/b/bk_R8PRdHn3TQFt-vxA/js async></script> <script>(function(){var box=document.querySelector('[data-submi-badges]');if(!box)return;function fix(){box.querySelectorAll('a').forEach(function(a){var want='nofollow noopener';if(a.getAttribute('rel')!==want)a.setAttribute('rel',want);});}
fix();new MutationObserver(fix).observe(box,{childList:true,subtree:true});})();</script></div>	© 2014 - 2026<span class=sep> | </span>Tutti i diritti riservati.</div></div></div></div></footer></div><template id=tp-language data-tp-language=it_IT></template><script type=speculationrules>{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/it/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/universal55x5old/*","/it/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}</script> <style>.ph2-tt-wrap{position:relative;display:inline-block;cursor:help}.ph2-tt-wrap .ph2-tt-box{display:none !important;position:absolute !important;bottom:125%;left:50%;transform:translateX(-50%);background:#333;color:#fff;padding:8px
10px;border-radius:4px;font-size:12px;line-height:1.4;width:240px;z-index:999;text-align:left;white-space:normal;box-shadow:0 2px 8px rgba(0,0,0,.2)}.ph2-tt-wrap:hover .ph2-tt-box,
.ph2-tt-wrap.ph2-active .ph2-tt-box{display:block !important}.has-percent::after{content:"%"}</style> <script>document.addEventListener('click',function(e){document.querySelectorAll('.ph2-tt-wrap.ph2-active').forEach(function(el){if(!el.contains(e.target))el.classList.remove('ph2-active');});var wrap=e.target.closest('.ph2-tt-wrap');if(wrap){e.preventDefault();wrap.classList.toggle('ph2-active');}});</script> <script>function loadVideo(el){const videoId=el.dataset.id;const iframe=document.createElement("iframe");iframe.src=`https://www.youtube.com/embed/${videoId}?autoplay=1`;iframe.width="750";iframe.height="422";iframe.frameBorder="0";iframe.allow="autoplay; encrypted-media";iframe.allowFullscreen=true;el.innerHTML="";el.appendChild(iframe);}</script> <style>.youtube-placeholder{position:relative;width:100%;height:0;padding-bottom:56.25%;background-color:#000;cursor:pointer;overflow:hidden}.youtube-placeholder img,
.youtube-placeholder
iframe{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.youtube-placeholder .play-button{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:68px;height:48px;background:rgba(0, 0, 0, 0.6);border-radius:12px}.youtube-placeholder .play-button::before{content:'';position:absolute;left:26px;top:12px;width:0;height:0;border-left:16px solid white;border-top:10px solid transparent;border-bottom:10px solid transparent}</style><div class=mwai-chatbot-container data-params='{"aiName":"ProHoster Chat","userName":"User: ","guestName":"Guest:","aiAvatar":true,"aiAvatarUrl":"chat-robot-1.svg","textSend":"Send","textClear":"Clear","imageUpload":false,"fileUpload":false,"multiUpload":false,"maxUploads":1,"fileUploads":0,"mode":"chat","textInputPlaceholder":"Type your message...","textEmptyHint":"","textInputMaxLength":1500,"textCompliance":"","startSentence":"Hi! How can I help you?","localMemory":true,"themeId":"chatgpt","window":true,"icon":"","iconText":"ProHoster Agent","iconTextDelay":1,"iconTextDuration":0,"iconTextOnce":"session","iconAlt":"AI Engine Chatbot","iconPosition":"bottom-right","centerOpen":false,"width":"","openDelay":"","iconBubble":true,"windowAnimation":"zoom","fullscreen":false,"copyButton":true,"pdfButton":false,"headerSubtitle":"Discuss with ProHoster Agent","popupTitle":"ProHoster Agent","containerType":"standard","headerType":"standard","messagesType":"standard","inputType":"standard","footerType":"standard"}' data-system='{"botId":"default","customId":null,"userData":null,"sessionId":null,"restNonce":null,"contextId":36968,"pluginUrl":"https:\/\/prohoster.info\/wp-content\/plugins\/ai-engine","restUrl":"https:\/\/prohoster.info\/it\/wp-json","stream":true,"debugMode":false,"eventLogs":false,"speech_recognition":false,"speech_synthesis":false,"typewriter":false,"crossSite":false,"texts":{"Ask me anything!":"Chiedimi pure qualsiasi cosa!","Jump to the latest message":"Vai all'ultimo messaggio","Try again":"Riprova","Conversation cleared.":"La conversazione \u00e8 terminata.","Undo":"Undo","Done!":"Done!","New Chat":"Nuova chat","No messages yet":"Ancora nessun messaggio","Rename":"Rinomina","Delete":"Elimina","Your text was cut at %d characters.":"Your text was cut at %d characters.","Hold to Talk":"Tieni premuto per parlare","Release to Send":"Release to Send","Press Space to talk":"Press Space to talk","Start session to upload images":"Start session to upload images","Usage limit exceeded":"Limite d'utilizzo superato","Connection failed":"Connessione non riuscita","Connection failed. Please check your network and try again.":"Connessione non riuscita. Controlla la tua connessione e\/o la tua rete e riprova.","Connection lost. Reconnecting...":"Connection lost. Reconnecting...","Connection lost while uploading image. Please try again.":"Connection lost while uploading image. Please try again.","Connection timeout: The server took too long to respond.":"Connection timeout: The server took too long to respond.","Could not start realtime session.":"Could not start realtime session.","An error occurred while starting the realtime session.":"An error occurred while starting the realtime session.","An error occurred while processing your request. Please try again.":"Si \u00e8 verificato un errore durante l'elaborazione della tua richiesta. Riprova.","An error occurred while committing the stats.":"An error occurred while committing the stats.","An error occurred while committing the discussion.":"An error occurred while committing the discussion.","An error occurred while executing the function.":"An error occurred while executing the function.","Authentication failed: Your session has expired. Please refresh the page.":"L'autenticazione \u00e8 fallita: la tua sessione \u00e8 scaduta. Aggiorna la pagina.","Error uploading image. Please try again.":"Error uploading image. Please try again.","Failed to access microphone: ":"Failed to access microphone: ","Failed to access microphone. Please ensure microphone permissions are granted and try again.":"Accesso fallito al microfono. Assicurati che l'autorizzazione all'uso del microfono sia attiva e riprova.","Failed to establish connection with OpenAI servers. Please try again.":"Impossibile stabilire una connessione con i server OpenAI. Riprova.","Failed to read image file.":"Failed to read image file.","Failed to send image. Please try again.":"Failed to send image. Please try again.","Failed to upload image.":"Failed to upload image.","Image file size must be less than 20MB.":"Image file size must be less than 20MB.","Internal server error: An unexpected error occurred. Please try again.":"Errore interno del server: Si \u00e8 verificato un errore inatteso. Riprova.","Invalid API key: Please check your OpenAI API key in settings.":"Invalid API key: Please check your OpenAI API key in settings.","Invalid request: The message format was not recognized by the server.":"Richiesta non valida: Il formato del messaggio non \u00e8 stato riconosciuto dal server.","MediaDevices API not available. Please ensure you are using HTTPS and a modern browser.":"API MediaDevices non disponibile. Assicurati di utilizzare HTTPS ed un browser moderno.","Model overloaded: The AI model is currently experiencing high demand.":"Model overloaded: The AI model is currently experiencing high demand.","Network error: Failed to establish connection to the AI service.":"Network error: Failed to establish connection to the AI service.","Please select an image file.":"Please select an image file.","Please start a session before uploading images.":"Please start a session before uploading images.","Quota exceeded: You have reached your usage limit for this period.":"Quota superata: Hai raggiunto il tuo limite di utilizzo per questo periodo.","Rate limit exceeded: Too many requests. Please try again later.":"Rate limit exceeded: Too many requests. Please try again later.","Service unavailable: The AI service is temporarily down for maintenance.":"Servizio non disponibile: Il servizio AI \u00e8 temporaneamente fuori servizio per manutenzione."},"actions":[],"blocks":[],"shortcuts":[]}' data-theme={"type":"internal","name":"ChatGPT","themeId":"chatgpt","settings":[],"style":"","cssUrl":"https:\/\/prohoster.info\/wp-content\/plugins\/ai-engine\/themes\/chatgpt.css"}></div><script id=flying-scripts>const loadScriptsTimer=setTimeout(loadScripts,5000*1000);const userInteractionEvents=['click','mousemove','keydown','touchstart','touchmove','wheel'];userInteractionEvents.forEach(function(event){window.addEventListener(event,triggerScriptLoader,{passive:!0})});function triggerScriptLoader(){loadScripts();clearTimeout(loadScriptsTimer);userInteractionEvents.forEach(function(event){window.removeEventListener(event,triggerScriptLoader,{passive:!0})})}
function loadScripts(){document.querySelectorAll("script[data-type='lazy']").forEach(function(elem){elem.setAttribute("src",elem.getAttribute("data-src"))})}</script> <script id=trp-dynamic-translator-js-extra>var trp_data={"trp_custom_ajax_url":"https://prohoster.info/wp-content/plugins/translatepress-multilingual/includes/trp-ajax.php","trp_wp_ajax_url":"https://prohoster.info/wp-admin/admin-ajax.php","trp_language_to_query":"it_IT","trp_original_language":"ru_RU","trp_current_language":"it_IT","trp_skip_selectors":["[data-no-translation]","[data-no-dynamic-translation]","[data-trp-translate-id-innertext]","script","style","head","trp-span","translate-press","[data-trp-translate-id]","[data-trpgettextoriginal]","[data-trp-post-slug]"],"trp_base_selectors":["data-trp-translate-id","data-trpgettextoriginal","data-trp-post-slug"],"trp_attributes_selectors":{"text":{"accessor":"outertext","attribute":false},"block":{"accessor":"innertext","attribute":false},"image_src":{"selector":"img[src]","accessor":"src","attribute":true},"submit":{"selector":"input[type='submit'],input[type='button'], input[type='reset']","accessor":"value","attribute":true},"placeholder":{"selector":"input[placeholder],textarea[placeholder]","accessor":"placeholder","attribute":true},"title":{"selector":"[title]","accessor":"title","attribute":true},"a_href":{"selector":"a[href]","accessor":"href","attribute":true},"button":{"accessor":"outertext","attribute":false},"option":{"accessor":"innertext","attribute":false},"aria_label":{"selector":"[aria-label]","accessor":"aria-label","attribute":true},"video_src":{"selector":"video[src]","accessor":"src","attribute":true},"video_poster":{"selector":"video[poster]","accessor":"poster","attribute":true},"video_source_src":{"selector":"video source[src]","accessor":"src","attribute":true},"audio_src":{"selector":"audio[src]","accessor":"src","attribute":true},"audio_source_src":{"selector":"audio source[src]","accessor":"src","attribute":true},"picture_image_src":{"selector":"picture image[src]","accessor":"src","attribute":true},"picture_source_srcset":{"selector":"picture source[srcset]","accessor":"srcset","attribute":true},"image_alt":{"selector":"img[alt]","accessor":"alt","attribute":true},"meta_desc":{"selector":"meta[name=\"description\"],meta[property=\"og:title\"],meta[property=\"og:description\"],meta[property=\"og:site_name\"],meta[property=\"og:image:alt\"],meta[name=\"twitter:title\"],meta[name=\"twitter:description\"],meta[name=\"twitter:image:alt\"],meta[name=\"DC.Title\"],meta[name=\"DC.Description\"],meta[property=\"article:section\"],meta[property=\"article:tag\"]","accessor":"content","attribute":true},"page_title":{"selector":"title","accessor":"innertext","attribute":false},"meta_desc_img":{"selector":"meta[property=\"og:image\"],meta[property=\"og:image:secure_url\"],meta[name=\"twitter:image\"]","accessor":"content","attribute":true}},"trp_attributes_accessors":["outertext","innertext","src","value","placeholder","title","href","aria-label","poster","srcset","alt","content"],"gettranslationsnonceregular":"67059b66f0","showdynamiccontentbeforetranslation":"","skip_strings_from_dynamic_translation":[],"skip_strings_from_dynamic_translation_for_substrings":{"href":["amazon-adsystem","googleads","g.doubleclick"]},"duplicate_detections_allowed":"100","trp_translate_numerals_opt":"no","trp_no_auto_translation_selectors":["[data-no-auto-translation]"]};</script> <script id=trp-dynamic-translator-js src="https://prohoster.info/wp-content/plugins/translatepress-multilingual/assets/js/trp-translate-dom-changes.js?ver=3.3.7"></script> <script id=heartbeat-js-extra>var heartbeatSettings={"ajaxurl":"/wp-admin/admin-ajax.php","interval":"15"};var dfehc_heartbeat_vars={"recommendedInterval":"21.453473115809","heartbeat_control_enabled":"1","nonce":"351f56761f","ver":"1791319534","cache_bypass_rate":"0.05"};</script> <script id=heartbeat-js src="https://prohoster.info/wp-content/plugins/dynamic-front-end-heartbeat-control/js/heartbeat.min.js?ver=1.6.5"></script> <script id=react-js src="https://prohoster.info/wp-includes/js/dist/vendor/react.min.js?ver=18.3.1.1"></script> <script id=react-dom-js src="https://prohoster.info/wp-includes/js/dist/vendor/react-dom.min.js?ver=18.3.1.1"></script> <script id=wp-escape-html-js src="https://prohoster.info/wp-includes/js/dist/escape-html.min.js?ver=87ebe53e97bba59805a5"></script> <script id=wp-element-js src="https://prohoster.info/wp-includes/js/dist/element.min.js?ver=4a4370b2b349066fd440"></script> <script id=mwai_chatbot-js defer data-type=lazy data-src="https://prohoster.info/wp-content/plugins/ai-engine/app/chatbot.js?ver=1791468530"></script> <script id=mwai_highlight-js defer data-type=lazy data-src="https://prohoster.info/wp-content/plugins/ai-engine/vendor/highlightjs/highlight.min.js?ver=11.7"></script> <script id=gt_widget_script_25393653-js-before data-type=lazy data-src="data:text/javascript;base64,CndpbmRvdy5ndHJhbnNsYXRlU2V0dGluZ3MgPSAvKiBkb2N1bWVudC53cml0ZSAqLyB3aW5kb3cuZ3RyYW5zbGF0ZVNldHRpbmdzIHx8IHt9O3dpbmRvdy5ndHJhbnNsYXRlU2V0dGluZ3NbJzI1MzkzNjUzJ10gPSB7ImRlZmF1bHRfbGFuZ3VhZ2UiOiJydSIsImxhbmd1YWdlcyI6WyJhZiIsImFtIiwiYXIiLCJoeSIsImF6IiwiYmUiLCJibiIsImJzIiwiemgtQ04iLCJ6aC1UVyIsImhyIiwiY3MiLCJkYSIsImZpIiwia2EiLCJlbCIsIml3IiwiaHUiLCJpcyIsImlkIiwiamEiLCJrayIsImtvIiwia3kiLCJsdiIsImx0IiwibW4iLCJteSIsIm5vIiwiZmEiLCJydSIsInNrIiwic2wiLCJzdyIsInN2IiwidGgiLCJ0ciIsInVrIiwidXoiLCJ2aSJdLCJ1cmxfc3RydWN0dXJlIjoic3ViX2RpcmVjdG9yeSIsImZsYWdfc3R5bGUiOiIyZCIsImZsYWdfc2l6ZSI6MjQsIndyYXBwZXJfc2VsZWN0b3IiOiIjZ3Qtd3JhcHBlci0yNTM5MzY1MyIsImFsdF9mbGFncyI6W10sImN1c3RvbV9jc3MiOiIuZ3RyYW5zbGF0ZV93cmFwcGVyIC5ndF9vcHRpb24ge3Bvc2l0aW9uOiBhYnNvbHV0ZTtmbG9hdDogcmlnaHQ7fSIsImhvcml6b250YWxfcG9zaXRpb24iOiJpbmxpbmUiLCJmbGFnc19sb2NhdGlvbiI6Ilwvd3AtY29udGVudFwvcGx1Z2luc1wvZ3RyYW5zbGF0ZVwvZmxhZ3NcLyJ9OwovLyMgc291cmNlVVJMPWd0X3dpZGdldF9zY3JpcHRfMjUzOTM2NTMtanMtYmVmb3JlCg=="></script><script data-no-optimize=1 data-no-minify=1 data-gt-orig-url=/it/blog/administrirovanie/sposoby-integratsii-s-1s data-gt-orig-domain=prohoster.info data-gt-widget-id=25393653 defer data-type=lazy data-src="https://prohoster.info/wp-content/plugins/gtranslate/js/popup.js?ver=5.0.1"></script><script>document.getElementById('burger').addEventListener('click',function(){document.getElementById('mainNav').classList.toggle('open');});document.querySelectorAll('.submenu-toggle').forEach(function(btn){btn.addEventListener('click',function(e){e.preventDefault();const parent=btn.closest('.has-submenu');const submenu=parent.querySelector('.submenu');const isOpen=parent.classList.toggle('open');if(isOpen){submenu.style.display='block';btn.textContent='◀';}else{submenu.style.display='none';btn.textContent='▼';}});});</script> <script>document.addEventListener("DOMContentLoaded",function(){const hamburgerBtn=document.querySelector(".gamburger-btn");const primaryMenu=document.querySelector("ul#primary-menu");if(hamburgerBtn&&primaryMenu){hamburgerBtn.addEventListener("click",function(event){event.preventDefault();this.classList.toggle("gamburger-btn_active");primaryMenu.classList.toggle("active_primary");});}
const mobileSidebar=document.getElementById("mobile_sidebar");const secondaryAside=document.querySelector("aside#secondary");if(mobileSidebar&&secondaryAside){mobileSidebar.addEventListener("click",function(){this.classList.toggle("open_mobile_sidebar");secondaryAside.classList.toggle("open_secondary");});}});</script> <script>document.addEventListener("DOMContentLoaded",function(){const masthead=document.getElementById("masthead");function toggleHeaderFixed(){const isDesktop=window.innerWidth>991;const scrollTop=window.scrollY;if(masthead){if(isDesktop){if(scrollTop>150){masthead.classList.add("header-fixed");}else{masthead.classList.remove("header-fixed");}}else{masthead.classList.remove("header-fixed");}}}
window.addEventListener("scroll",toggleHeaderFixed);window.addEventListener("resize",toggleHeaderFixed);toggleHeaderFixed();});</script> <div id=cookie-data-source style="display:none !important;"> <span class=src-text>Utilizziamo i file <a target=_blank rel=nofollow href=https://prohoster.info/it/kompaniya/privacy-policy/#cookie>cookie</a>per garantire la migliore esperienza sul nostro sito. Continuando a utilizzare il sito, accetti la nostra informativa sulla privacy.</span> <span class=src-btn>Accetta</span></div> <script>(function(){const cookieName='user_cookies_accepted';if(localStorage.getItem(cookieName))return;setTimeout(function(){const dataSource=document.getElementById('cookie-data-source');if(!dataSource)return;const textContent=dataSource.querySelector('.src-text').innerHTML;const btnContent=dataSource.querySelector('.src-btn').innerText;const styles=`

            `;const styleSheet=document.createElement("style");styleSheet.innerText=styles;document.head.appendChild(styleSheet);const finalHtml=`
                <div id=cookie-banner>
                    <div class=cookie-container>
                        <div class=cookie-text>${textContent}</div>
                        <button id=accept-cookies class=cookie-btn>${btnContent}</button>
                    </div>
                </div>
            `;document.body.insertAdjacentHTML('beforeend',finalHtml);const banner=document.getElementById('cookie-banner');const btn=document.getElementById('accept-cookies');setTimeout(()=>{banner.classList.add('show');},100);btn.addEventListener('click',function(){localStorage.setItem(cookieName,'true');banner.classList.remove('show');setTimeout(()=>{banner.remove();},500);});},2000);})();</script> <div id=gt-text-source style="position:absolute; left:-9999px; top:-9999px; opacity:0;"> <span id=gt-org-desc>Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS</span> <span id=gt-page-name>🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS - ProHoster</span></div> <script>(function(){function injectSchemas(){if(document.getElementById('added-org-schema'))return;var orgDesc=document.getElementById('gt-org-desc').innerText;var pageName=document.getElementById('gt-page-name').innerText;var schemas=[{"@context":"https://schema.org","@type":"Organization","id":"added-org-schema","name":"ProHoster","url":"https://prohoster.info/","logo":"https://prohoster.info/wp-content/uploads/2019/08/logo_prohoster.png","email":"support@prohoster.info","description":orgDesc,"address":{"@type":"PostalAddress","streetAddress":"Tulpenstraat, 6","addressLocality":"Meppel","postalCode":"7943 DN","addressCountry":"NL"},"aggregateRating":{"@type":"AggregateRating","ratingValue":"4.85","reviewCount":"1297","bestRating":"5","worstRating":"1"},"sameAs":["https://hostadvice.com/hosting-company/prohoster-reviews/","https://facebook.com/prohoster","https://twitter.com/prohoster","https://www.instagram.com/prohoster.info/","https://www.tiktok.com/@prohoster.info","https://www.youtube.com/@prohoster_info","https://www.linkedin.com/company/prohoster"]},{"@context":"https://schema.org","@type":"WebPage","name":pageName,"url":window.location.href}];schemas.forEach(function(s){var script=document.createElement('script');script.type='application/ld+json';if(s.id)script.id=s.id;script.text=JSON.stringify(s);document.head.appendChild(script);});}
var checkTimer=setInterval(function(){var currentLang=document.documentElement.lang||document.querySelector('html').getAttribute('lang');var text=document.getElementById('gt-org-desc').innerText;if(!/[а-яА-Я]/.test(text)||currentLang!=='ru'){injectSchemas();clearInterval(checkTimer);}},500);setTimeout(function(){injectSchemas();clearInterval(checkTimer);},4000);})();</script> <script>function w3tc_ll_observe(ll){if(!ll||!ll.update)return;var t;new MutationObserver(function(){clearTimeout(t);t=setTimeout(function(){ll.update();},200);}).observe(document.documentElement,{childList:true,subtree:true});}window.addEventListener("LazyLoad::Initialized",function(e){setTimeout(function(){window.w3tc_lazyload=e.detail.instance;w3tc_ll_observe(window.w3tc_lazyload);},1);});window.w3tc_lazyload=1,window.lazyLoadOptions={elements_selector:".lazy",callback_loaded:function(t){var e;try{e=new CustomEvent("w3tc_lazyload_loaded",{detail:{e:t}})}catch(a){(e=document.createEvent("CustomEvent")).initCustomEvent("w3tc_lazyload_loaded",!1,!1,{e:t})}window.dispatchEvent(e)}}</script><script async src=https://prohoster.info/wp-content/plugins/w3-total-cache/pub/js/lazyload.min.js></script></body></html>