Integratiemethoden met 1C

Wat zijn de belangrijkste vereisten voor bedrijfsapplicaties? Enkele van de belangrijkste taken zijn:

  • De mogelijkheid om de logica van de applicatie eenvoudig aan te passen aan veranderende zakelijke behoeften.
  • Eenvoudige integratie met andere applicaties.

Hoe de eerste taak in 1C wordt aangepakt, is kort beschreven in de sectie 'Aanpassing en ondersteuning'. dit artikel; we zullen terugkomen op dit interessante onderwerp in een van de volgende artikelen. Vandaag bespreken we de tweede taak, integratie.

Integratietaken

Integratietaken kunnen variëren. Voor sommige taken is een eenvoudige interactieve gegevensuitwisseling voldoende, bijvoorbeeld voor het versturen van een lijst van medewerkers naar de bank voor de uitgifte van salariskaarten. Voor complexere taken kan een volledig geautomatiseerde gegevensuitwisseling nodig zijn, mogelijk met oproepen naar de businesslogica van een extern systeem. Er zijn ook specialistische taken, zoals integratie met externe apparatuur (bijvoorbeeld handelsapparatuur, mobiele scanners, enz.) of met verouderde of gespecialiseerd systemen (bijvoorbeeld systemen voor het herkennen van RFID-tags). Het is uiterst belangrijk om voor elke taak het meest geschikte integratiemechanisme te kiezen.

Integratiemogelijkheden met 1C

Er zijn verschillende benaderingen voor de implementatie van integratie met 1C-applicaties; welke te kiezen hangt af van de vereisten van de taak.

  1. Implementatie op basis van integratiemechanismen, geleverd door het platform, of een eigen gespecialiseerd API aan de kant van de 1C-applicatie (bijvoorbeeld een reeks web- of HTTP-services die externe applicaties aanroepen voor gegevensuitwisseling met de 1C-applicatie). Een voordeel van deze benadering is de veerkracht van de API tegen veranderingen in de implementatie aan de kant van de 1C-applicatie. Een kenmerk van de benadering is dat de broncode van de standaardoplossing van 1C moet worden aangepast, wat potentieel inspanningen kan vergen bij het samenvoegen van de broncodes bij de overgang naar een nieuwe versie van de configuratie. In dit geval kan nieuwe, geavanceerde functionaliteit een uitkomst bieden — configuratie-uitbreidingen. Uitbreidingen zijn in wezen een pluginmechanisme dat het mogelijk maakt om aanvullende applicaties te creëren zonder de applicaties zelf aan te passen. Het verplaatsen van de integratie-API naar de configuratie-uitbreiding voorkomt complicaties bij het combineren van configuraties bij de overgang naar een nieuwe versie van de standaardoplossing.
  2. Het gebruik van integratiemechanismen van het platform die externe toegang bieden tot het objectmodel van de applicatie en geen aanpassing van de applicatie of het maken van een uitbreiding vereisen. Het voordeel van deze aanpak is dat de 1C-applicatie niet hoeft te worden gewijzigd. Het nadeel is dat als de 1C-applicatie al is aangepast, er mogelijk verdere aanpassingen in de geïntegreerde applicatie nodig zijn. Een voorbeeld van deze aanpak is het gebruik van het OData-protocol voor integratie, geïmplementeerd aan de kant van het 1C:Enterprise-platform (meer hierover hieronder).
  3. Gebruik maken van kant-en-klare applicatieprotocollen, geïmplementeerd in standaardoplossingen van 1C. Veel standaardoplossingen van 1C en partners implementeren hun eigen applicatieprotocollen op basis van de integratiemechanismen die door het platform worden geboden, gericht op specifieke taken. Bij het gebruik van deze mechanismen is er geen code vereist aan de kant van de 1C-applicatie, omdat we gebruikmaken van de standaardmogelijkheden van de applicatie. Aan de kant van de 1C-applicatie hoeven we slechts bepaalde instellingen uit te voeren.

Integratiemechanismen in het 1C:Enterprise-platform

Importeren/exporteren van bestanden

Stel dat we voor de taak staan van bidirectionele gegevensuitwisseling tussen de 1C-applicatie en een willekeurige applicatie. Bijvoorbeeld, we moeten de productlijst (referentie Catalogus) tussen de 1C-applicatie en een willekeurige applicatie synchroniseren.

Integratiemethoden met 1C
Om deze taak op te lossen kan een uitbreiding worden geschreven die de referentie Catalogus in een bestand van een bepaald formaat (tekst, XML, JSON, …) exporteert en dit formaat kan inlezen.

Het platform heeft een mechanisme voor het serialiseren van applicatieobjecten in XML, zowel direct via de methoden van de globale context WriteXML/ReadXML, als met behulp van het hulpprogramma XDTO (XML Data Transfer Objects).

Elk object in het 1C:Enterprise-systeem kan worden.serialized naar een XML-weergave en omgekeerd.

Deze functie retourneert de weergave van het object in XML-vorm:

Functie Object_In_XML(Object)
    RecordXML = Nieuwe RecordXML();
    RecordXML.StelStringIn();
    SchrijfXML(RecordXML, Object);
    Retourneer RecordXML.Sluit();
EindeFunctie

Zo zal de export van de catalogus Nomenclatuur in XML eruitzien met behulp van XDTO:

&OpServer
Procedure ExporteerXMLOpServer()	
	NieuweSerializerXDTO  = SerializerXDTO;
	NieuweRecordXML = Nieuwe RecordXML();
	NieuweRecordXML.OpenBestand("C:DataNomenclatuur.xml", "UTF-8");
	
	NieuweRecordXML.SchrijfAankondigingXML();
	NieuweRecordXML.SchrijfStartElement("CatalogusNomenclatuur");
	
	Selectie = Catalogi.Nomenclatuur.Selecteren();
	
	Terwijl Selectie.Volgende() Doe 
		ObjectNomenclatuur = Selectie.KrijgObject();
		NieuweSerializerXDTO.SchrijfXML(NieuweRecordXML, ObjectNomenclatuur, ToewijzingXML.Type.Expliciet);
	EindeLoop;
	
	NieuweRecordXML.SchrijfEindeElement();
	NieuweRecordXML.Sluit();	
EindeProcedure

Met een eenvoudige aanpassing van de code exporteren we de catalogus naar JSON. De producten worden in een array geschreven; voor de variatie geven we de Engelstalige versie van de syntaxis:

&OpServer
Procedure ExporteerJSONOpServer()
	NieuweXDTOSerializer  = XDTOSerializer;
	NieuweJSONSchrijver = Nieuwe JSONSchrijver();
	NieuweJSONSchrijver.OpenBestand("C:DataNomenclatuur.json", "UTF-8");
	
	NieuweJSONSchrijver.SchrijfStartObject();
	NieuweJSONSchrijver.SchrijfEigenschapsnaam("CatalogusNomenclatuur");
	NieuweJSONSchrijver.SchrijfStartArray();
	
	Selectie = Catalogs.Nomenclatuur.Selecteren();	
	
	Terwijl Selectie.Volgende() Doe 
		NomenclatuurObject = Selectie.KrijgObject();
		
		NieuweJSONSchrijver.SchrijfStartObject();
		
		NieuweJSONSchrijver.SchrijfEigenschapsnaam("Nomenclatuur");
		NieuweXDTOSerializer.SchrijfJSON(NieuweJSONSchrijver, NomenclatuurObject, ToewijzingXML.Type.Impliciet);
		
		NieuweJSONSchrijver.SchrijfEindeObject();
	EindeDoe;
	
	NieuweJSONSchrijver.SchrijfEindeArray();
	NieuweJSONSchrijver.SchrijfEindeObject();
	NieuweJSONSchrijver.Sluit();	
EindeProcedure

Vervolgens hoeft u alleen nog de gegevens aan de eindgebruiker over te dragen. Het platform 1C:Enterprise ondersteunt de belangrijkste internetprotocollen HTTP, FTP, POP3, SMTP en IMAP, inclusief hun veilige versies. Daarnaast kunnen gegevens ook worden verzonden via HTTP en/of webservices.

HTTP- en webservices

Integratiemethoden met 1C

1C-applicaties kunnen hun eigen HTTP- en webservices implementeren, evenals HTTP- en webservices aanroepen die door externe applicaties zijn geïmplementeerd.

REST-interface en het OData-protocol

Vanaf versie 8.3.5 kan het 1C:Enterprise-platform automatisch een REST-interface genereren voor de gehele applicatieoplossing. Elk configuratieobject (catalogus, document, register van gegevens, enz.) kan beschikbaar worden gesteld voor het ophalen en wijzigen van gegevens via de REST-interface. Het platform gebruikt het protocol OData versie 3.0. Publicatie van OData-diensten gebeurt vanuit het menu Configurator 'Beheer -> Publicatie op webserver', het selectievakje 'Publiceer standaard OData-interface' moet zijn aangevinkt. De formaten atom/XML en JSON worden ondersteund. Nadat de applicatieoplossing op de webserver is gepubliceerd, kunnen externe systemen deze benaderen via de REST-interface met behulp van HTTP-verzoeken. Voor het werken met de 1C-applicatie via het OData-protocol is programmeren aan de 1C-kant niet nodig.

Dus, een URL zoals http:////odata/standard.odata/Catalog_Artikel zal ons de inhoud van de catalogus Artikel in XML-formaat teruggeven — een verzameling entry-elementen (de berichtkop is ter vergadering weggelaten):

http://server/Config/odata/standard.odata/Catalog_Artikel(guid'35d1f6e4-289b-11e6-8ba4-e03f49b16074')
	
	
	2016-06-06T16:42:17
	
	<summary />
	
	
		
			35d1f6e4-289b-11e6-8ba4-e03f49b16074
			AAAAAgAAAAA=
			false
			000000001
			Airconditioner Mitsubishi
			Vermogen 2,5 kW, werkmodi: verwarming/koeling
		
	


	http://server/Config/odata/standard.odata/Catalog_Artikel(guid'35d1f6e5-289b-11e6-8ba4-e03f49b16074')
	
...
</code></pre><p> Door de string «?$format=application/json» aan de URL toe te voegen, krijgen we de inhoud van de catalogus Artikel in JSON-formaat (URL zoals <u>http:////odata/standard.odata/Catalog_Artikel?$format=application/json</u> ):</p><pre><code>{
"odata.metadata": "http://server/Config/odata/standard.odata/$metadata#Catalog_Artikel",
"value": [{
"Ref_Key": "35d1f6e4-289b-11e6-8ba4-e03f49b16074",
"DataVersion": "AAAAAgAAAAA=",
"DeletionMark": false,
"Code": "000000001",
"Description": "Airconditioner Mitsubishi",
"Beschrijving": "Vermogen 2,5 kW, werkmodi: verwarming/koeling"
},{
"Ref_Key": "35d1f6e5-289b-11e6-8ba4-e03f49b16074",
"DataVersion": "AAAAAwAAAAA=",
"DeletionMark": false,
"Code": "000000002",
"Description": "Airconditioner Daikin",
"Beschrijving": "Vermogen 3 kW, werkmodi: verwarming/koeling"
}, …
</code></pre><p></p><h4>Externe gegevensbronnen</h4><p> <img class=lazy decoding=async alt="Integratiemethoden met 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 sommige gevallen vindt gegevensuitwisseling plaats via <noindex><a rel=nofollow href=http://v8.1c.ru/overview/Term_000000795.htm>externe gegevensbronnen</a></noindex> kan de optimale oplossing blijken te zijn. Externe gegevensbronnen zijn een toepassingsobject van de 1C-configuratie dat interactie mogelijk maakt met elke ODBC-compatibele database, zowel voor lezen als schrijven. Externe gegevensbronnen zijn beschikbaar op zowel Windows als Linux.</p><h4>Gegevensuitwisselingsmechanisme</h4><p> <noindex><a rel=nofollow href=http://v8.1c.ru/overview/Term_000000269.htm>Gegevensuitwisselingsmechanisme</a></noindex> is bedoeld voor zowel het creëren van territoriaal verspreide systemen op basis van 1C:Enterprise als voor het organiseren van gegevensuitwisseling met andere informatiesystemen die niet gebaseerd zijn op 1C:Enterprise.</p><p>Dit mechanisme wordt actief gebruikt bij implementaties van 1C, en het bereik van taken dat ermee kan worden opgelost, is zeer breed. Dit omvat gegevensuitwisseling tussen 1C-applicaties die zijn geïnstalleerd in de vestigingen van de organisatie, gegevensuitwisseling tussen een 1C-applicatie en de website van een webwinkel, en gegevensuitwisseling tussen een serverapplicatie van 1C en een mobiele client (gemaakt met de mobiele platform van 1C:Enterprise), en nog veel meer.</p><p>Een van de belangrijkste begrippen in het gegevensuitwisselingsmechanisme is het uitwisselingsplan. Het uitwisselingsplan is een speciaal type toepassingsobject in het 1C-platform dat onder andere de samenstelling van de gegevens definieert die aan de uitwisseling zullen deelnemen (welke specifieke catalogi, documenten, registers, enz.). Het uitwisselingsplan bevat ook informatie over de deelnemers aan de uitwisseling (de zogenaamde uitwisselingsknopen).<br> De tweede component van het gegevensuitwisselingsmechanisme is het mechanisme voor wijzigingsregistratie. Dit mechanisme volgt automatisch de gegevenswijzigingen in het systeem die aan eindgebruikers moeten worden doorgegeven in het kader van het uitwisselingsplan. Dankzij dit mechanisme volgt het platform de wijzigingen die sinds de laatste synchronisatie zijn opgetreden en maakt het mogelijk de hoeveelheid gegevens die in het kader van de volgende synchronisatiesessie wordt verzonden, te minimaliseren.</p><p>Gegevensuitwisseling vindt plaats via XML-berichten van een bepaalde structuur. Een bericht bevat gegevens die sinds de laatste synchronisatie met de node zijn gewijzigd, evenals enige service-informatie. De structuur van de berichten ondersteunt de nummering van berichten en maakt het mogelijk om bevestigingen van de ontvangende node te ontvangen over de ontvangst van berichten. Deze bevestigen zijn opgenomen in elk bericht dat van de ontvangende node komt, in de vorm van het nummer van het laatst ontvangen bericht. De nummering van de berichten stelt het platform in staat te begrijpen welke gegevens al met succes zijn overgedragen aan de ontvangende node, en voorkomt dubbele overdracht door alleen de gegevens door te geven die zijn gewijzigd sinds het laatste bericht dat door de verzendende node werd ontvangen met een ontvangstbewijs van de ontvangen gegevens door de ontvangende node. Dit werkingsschema garandeert de levering zelfs bij onbetrouwbare overdrachtskanalen en verlies van berichten.</p><h4>Externe componenten</h4><p> In sommige gevallen, bij het oplossen van integratietaken, kan men worden geconfronteerd met specifieke vereisten, zoals interactieprotocollen en gegevensformaten waarmee de 1C:Enterprise-plattform geen rekening houdt. Voor dit soort taken biedt het platform <noindex><a rel=nofollow href=http://v8.1c.ru/overview/Term_000000545.htm>de technologie van externe componenten</a></noindex>, die het mogelijk maakt om dynamisch te koppelen modules te creëren die de functionaliteit van 1C:Enterprise uitbreiden.</p><p>Een typisch voorbeeld van een taak met dergelijke vereisten kan de integratie van de applicatieoplossing 1C met handelsapparatuur zijn, beginnend bij weegschalen en eindigend bij kassa's en barcode-scanners. Externe componenten kunnen worden aangesloten zowel aan de serverzijde van 1C:Enterprise als aan de clientzijde (inclusief de webclient en <noindex><a rel=nofollow href=https://wonderland.v8.1c.ru/blog/vneshnie-komponenty-v-mobilnom-prilozhenii/ >de volgende versie van het mobiele platform</a></noindex> 1C:Enterprise). De technologie van externe componenten voorziet in een vrij eenvoudige en begrijpelijke programmeerinterface (C++) voor de interactie van de component met het 1C:Enterprise platform, die door de ontwikkelaar moet worden geïmplementeerd.</p><p>De mogelijkheden die zich aandienen bij het gebruik van externe componenten zijn zeer breed. Men kan interactie realiseren via een specifiek datacommunicatieprotocol met externe apparaten en systemen, specifieke algoritmen voor gegevensverwerking en gegevensformaten integreren, enz.</p><h4>Verouderde integratiemechanismen</h4><p> De platform biedt integratiemechanismen die niet aanbevolen worden voor gebruik in nieuwe oplossingen; ze zijn behouden uit het oogpunt van achterwaartse compatibiliteit en voor het geval een andere partij niet met modernere protocollen kan werken. Een daarvan is het werken met bestanden in DBF-formaat (ondersteund in de ingebouwde taal via het XBase-object).</p><p>Een ander verouderd integratiemechanisme is het gebruik van COM-technologie (alleen beschikbaar op het Windows-platform). Het 1C:Enterprise-platform biedt twee manieren van integratie voor Windows die de COM-technologie gebruiken: de Automation-server en de Externe verbinding. Ze zijn zeer vergelijkbaar, maar een van de belangrijkste verschillen is dat bij de Automation-server een volwaardig clienttoepassing 1C:Enterprise 8 wordt gestart, terwijl bij de externe verbinding een relatief kleine intraprocess COM-server start. Dat wil zeggen, bij gebruik via de Automation-server kan de functionaliteit van de clienttoepassing worden benut, en kunnen acties worden uitgevoerd die lijken op de interactieve acties van de gebruiker. Bij het gebruik van de externe verbinding kunnen alleen de functies van de businesslogica worden gebruikt, die uitgevoerd kunnen worden aan de clientzijde van de verbinding, waar de intraprocess-com-server wordt gemaakt, of er kan een oproep naar de businesslogica aan de serverzijde van 1C:Enterprise worden gedaan.</p><p>De COM-technologie kan ook worden gebruikt om toegang te krijgen tot externe systemen vanuit de applicatiecode op het 1C:Enterprise-platform. In dit geval fungeert de 1C-applicatie als COM-client. Het moet echter worden opgemerkt dat deze mechanismen alleen functioneren als de 1C-server werkt in een Windows-omgeving.</p><h3>Integratiemechanismen geïmplementeerd in standaardconfiguraties</h3><p></p><h4>EnterpriseData-formaat</h4><p> <img class=lazy decoding=async alt="Integratiemethoden met 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 een aantal 1C-configuraties (lijst hieronder) is er een kant-en-klaar mechanisme voor gegevensuitwisseling met externe applicaties op basis van het hierboven beschreven plattformmechanisme voor gegevensuitwisseling, dat geen wijziging van de broncode van de configuraties vereist (de voorbereiding voor gegevensuitwisseling gebeurt in de instellingen van de toepassingsoplossingen):</p><ul> <li>«1C:ERP Bedrijfsbeheer 2.0» </li> <li>«Geïntegreerde automatisering 2» </li> <li>«Bedrijfsboekhouding», editie 3.0 </li> <li>«Bedrijfsboekhouding KORP», editie 3.0 </li> <li>«Detailhandel», editie 2.0 </li> <li>«Basis voor Handelsbeheer», editie 11 </li> <li>«Handelsbeheer», editie 11</li> <li>«Loonadministratie en Personeelsbeheer CORP», editie 3</li></ul><p> Voor gegevensuitwisseling wordt het formaat gebruikt <noindex><a rel=nofollow href=http://v8.1c.ru/edi/edi_app/enterprisedata/ >EnterpriseData</a></noindex>, gebaseerd op XML. Het formaat is bedrijfgericht – de daarin beschreven gegevensstructuren komen overeen met bedrijfseenheden (documenten en elementen van naslagwerken) die in de 1C-programma's worden gepresenteerd, zoals: uitgevoerd werk, inkomende kasbon, tegenpartij, assortiment, enz.</p><p>Gegevensuitwisseling tussen de 1C-applicatie en een externe applicatie kan plaatsvinden:</p><ul> <li>via een specifieke bestandsdirectory </li> <li>via de FTP-directory </li> <li>via een webservice die aan de zijde van de 1C-applicatie is geïmplementeerd. Het bestand met gegevens wordt als parameter van de webmethoden doorgegeven</li> <li>via e-mail</li></ul><p> In het geval van gegevensuitwisseling via de webservice zal de externe applicatie de gegevensuitwisselingssessie initiëren door de relevante webmethoden van de 1C-applicatie aan te roepen. In andere gevallen zal de 1C-applicatie de initiator van de uitwisselingssessie zijn (door het bestand met gegevens in de respectieve directory te plaatsen of het bestand met gegevens naar het geconfigureerde e-mailadres te verzenden).<br> Ook aan de zijde van 1C wordt ingesteld hoe vaak de synchronisatie zal plaatsvinden (voor de opties met bestandsuitwisseling via directory en e-mail):</p><ul> <li>op schema (met een bepaalde frequentie) </li> <li>manueel; de gebruiker moet handmatig de synchronisatie starten telkens wanneer dat nodig is</li></ul><p></p><h5>Bevestiging van berichten</h5><p> De 1C-applicaties houden een register bij van verzonden en ontvangen synchronisatieberichten en verwachten hetzelfde van externe applicaties. Dit maakt gebruik van het hierboven beschreven berichtnummeringsmechanisme, dat is beschreven in het gedeelte 'Mechanisme voor gegevensuitwisseling'.</p><p>1C-applicaties verzenden tijdens de synchronisatie alleen informatie over de wijzigingen die sinds de laatste synchronisatie hebben plaatsgevonden met de bedrijfsentiteiten (om de hoeveelheid verzonden informatie te minimaliseren). Bij de eerste synchronisatie zal de 1C-applicatie alle bedrijfsentiteiten (bijvoorbeeld elementen van de nomenclaturesoftware) exporteren in het EnterpriseData-formaat naar een XML-bestand (aangezien ze allemaal 'nieuw' zijn voor de externe applicatie). De externe applicatie moet de informatie uit het door 1C ontvangen XML-bestand verwerken en bij de volgende synchronisatiesessie in het bestand dat naar 1C wordt verzonden, in een speciale sectie van de XML, de informatie plaatsen dat het bericht van 1C met een bepaald nummer met succes is ontvangen. Het ontvangstbewijs is voor de 1C-applicatie een signaal dat alle bedrijfsentiteiten met succes door de externe applicatie zijn verwerkt en dat er geen informatie meer over moet worden verzonden. Naast het ontvangstbewijs kan het XML-bestand van de externe applicatie ook gegevens voor synchronisatie vanuit de applicatie bevatten (bijvoorbeeld documenten voor de verkoop van goederen en diensten).</p><p>Na ontvangst van het ontvangstbewijs markeert de 1C-applicatie alle wijzigingen die in het vorige bericht zijn verzonden als succesvol gesynchroniseerd. Alleen niet-synchroniseerde wijzigingen in de bedrijfsentiteiten (het creëren van nieuwe entiteiten, het wijzigen en verwijderen van bestaande) zullen bij de volgende synchronisatiesessie naar de externe applicatie worden verzonden.</p><p><img class=lazy decoding=async alt="Integratiemethoden met 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> Bij het verzenden van gegevens van de externe applicatie naar de 1C-applicatie verandert het plaatje. De externe applicatie moet de sectie-ontvangstbewijs in het XML-bestand dienovereenkomstig invullen en bedrijfsgegevens voor synchronisatie met zijn kant in het EnterpriseData-formaat invoegen.</p><p><img class=lazy decoding=async alt="Integratiemethoden met 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>Versimpelde gegevensuitwisseling zonder ontvangstbewijs</h5><p> Voor gevallen van eenvoudige integratie, waarbij het voldoende is om alleen informatie van de externe applicatie naar de 1C-applicatie te verzenden en een terugzending van gegevens van de 1C-applicatie naar de externe applicatie niet vereist is (bijvoorbeeld integratie van een online winkel die verkoopinformatie naar '1C: Boekhouding' verzendt), is er een vereenvoudigde werkmethode via een webservice (zonder ontvangstbewijs) die geen instellingen aan de kant van de 1C-applicatie vereist.</p><h4>Gespecialiseerde integratieoplossingen</h4><p> Er is een standaardoplossing "1C: Gegevensconversie" die de mechanismen van het platform gebruikt voor de conversie en uitwisseling van gegevens tussen standaardconfiguraties van 1C, maar die ook kan worden gebruikt voor integratie met externe applicaties.</p><h5>Integratie met bankoplossingen</h5><p> De standaard <noindex><a rel=nofollow href=http://v8.1c.ru/edi/edi_stnd/100/index.htm>"Klantenbank"</a></noindex>, ontwikkeld door specialisten van 1C meer dan 10 jaar geleden, is feitelijk de standaard in de sector in Rusland geworden. De volgende stap in deze richting is de technologie <noindex><a rel=nofollow href=http://directbank.1c.ru/ >DirectBank</a></noindex>, die het mogelijk maakt om betalingsdocumenten naar de bank te verzenden en bankafschriften rechtstreeks vanuit het programma "1C: Bedrijf" te ontvangen met een simpele druk op de knop in het programma "1C"; hiervoor is geen extra software nodig op de cliëntcomputer.</p><p>Er is ook een <noindex><a rel=nofollow href=http://v8.1c.ru/edi/edi_stnd/109/ >standaard voor gegevensuitwisseling in salarisprojecten</a></noindex>.</p><h5>Overige</h5><p> Vermeldenswaard zijn <noindex><a rel=nofollow href=http://v8.1c.ru/edi/edi_stnd/131/ >het uitwisselingsprotocol tussen het systeem 1C: Bedrijf en de website</a></noindex>, de standaard voor uitwisseling van commerciële informatie <noindex><a rel=nofollow href=http://v8.1c.ru/edi/edi_stnd/90/ >CommerceML</a></noindex> (ontwikkeld in samenwerking met Microsoft, Intel, Price.ru en andere bedrijven), <noindex><a rel=nofollow href=http://v8.1c.ru/edi/edi_stnd/111/ >de standaard voor gegevensuitwisseling bij acquisitie transacties</a></noindex>.<br> <br>Bron: <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/nl/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 — Betaalbare en betrouwbare VPS-servers met volledige root-toegang" title="ProHoster VPS — Betaalbare en betrouwbare VPS-servers met volledige root-toegang" style="display: inline-block; height: auto; max-width: 100%;" width=700 height=86> </a></div></div><nav class="navigation post-navigation" aria-label=Berichten data-no-translation-aria-label><h2 class="screen-reader-text" data-no-translation="" data-trp-gettext="">Bericht navigatie</h2><div class=nav-links><div class=nav-previous><a href=https://prohoster.info/nl/blog/administrirovanie/lte-kak-simvol-nezavisimosti rel=prev>LTE als symbool van onafhankelijkheid</a></div><div class=nav-next><a href=https://prohoster.info/nl/blog/administrirovanie/podnimaem-server-1s-s-publikatsiej-bazy-i-veb-servisov-na-linux rel=next>We zetten de 1C-server op met publicatie van de database en webservices op 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">Onze diensten</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/nl/hosting/unlim-khosting>Onbeperkte webhosting</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-172"><a href=https://prohoster.info/nl/zhashchita-ot-ddos>Bescherming tegen DDoS-aanvallen</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-169"><a href=https://prohoster.info/nl/hosting/constructor>Websitebouwer</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-175"><a href=https://prohoster.info/nl/control-panel>Beheerpanelen</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-173"><a href=https://prohoster.info/nl/domain>Domeinregistratie</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-108824"><a href=https://prohoster.info/nl/ssl-sertifikat>SSL-certificaten</a></li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-123573"><a href=https://prohoster.info/nl/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/nl/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/nl/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">Informatie</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/nl/kompaniya/partnerstvo>Partnerschap</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/nl/bonus-partner>Bonussen van partners</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">Kennisbasis</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/nl/kompaniya>Over het bedrijf</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/nl/kompaniya/terms-of-service>Voorwaarden voor dienstverlening</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/nl/kompaniya/privacy-policy>Privacybeleid</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/nl/kompaniya/terms-of-service/#refund>Retourbeleid</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/nl/kompaniya/data-centers>Datacenters</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/nl/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">Misbruik rapporteren</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">Ondersteuning</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>Facturatiepaneel</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 (Reg. No. 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=#>Operations NL: Tulpenstraat 6, Meppel, Nederland</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="ProHoster Reviews"> </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="ProHoster Reviews"> </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>ProHoster Reviews</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="ProHoster Reviews"> </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">Wij accepteren</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="Wij accepteren 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="Wij accepteren 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="Wij accepteren 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="Wij accepteren 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="Wij accepteren Crypto" src=https://prohoster.info/wp-content/uploads/payment-logos/crypto.svg alt=Crypto-betaling> </a></div></div></div><div id=custom_html-25 class="widget_text widget widget_custom_html"><h3 class="widget-title">Sluit je bij ons aan</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="We zijn op 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="We zijn op 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="We zijn op 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="We zijn op 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="Klantbeoordelingen op Hostings.info" title="Klantbeoordelingen - opent in een nieuw venster"> </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="ProHoster Reviews"> </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>	© 2014 - 2026<span class=sep> | </span>Alle rechten voorbehouden.</div></div></div></div></footer></div><template id=tp-language data-tp-language=nl_NL></template><script type=speculationrules>{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/nl/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/universal55x5old/*","/nl/*\\?(.+)"]}},{"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\/nl\/wp-json","stream":true,"debugMode":false,"eventLogs":false,"speech_recognition":false,"speech_synthesis":false,"typewriter":false,"crossSite":false,"texts":{"Ask me anything!":"Vraag me maar wat je wilt!","Jump to the latest message":"Ga naar het nieuwste bericht","Try again":"Probeer opnieuw","Conversation cleared.":"Conversatie gewist.","Undo":"Ongedaan maken","Done!":"Klaar!","New Chat":"Nieuwe chat","No messages yet":"Nog geen berichten","Rename":"Hernoem","Delete":"Verwijder","Your text was cut at %d characters.":"Je tekst is afgekapt op %d karakters.","Hold to Talk":"Houd om te praten","Release to Send":"Vrijgeven om te verzenden","Press Space to talk":"Druk op spatie om te praten","Start session to upload images":"Sessie starten om afbeeldingen te uploaden","Usage limit exceeded":"Gebruikslimiet overschreden","Connection failed":"Verbinding mislukt","Connection failed. Please check your network and try again.":"Verbinding mislukt. Controleer je netwerk en probeer het opnieuw.","Connection lost. Reconnecting...":"Verbinding verloren. Verbinding herstellen...","Connection lost while uploading image. Please try again.":"Verbinding verbroken tijdens uploaden afbeelding. Probeer het opnieuw.","Connection timeout: The server took too long to respond.":"Time-out verbinding: de server deed er te lang over om te reageren.","Could not start realtime session.":"Kon geen realtime sessie starten.","An error occurred while starting the realtime session.":"Er is een fout opgetreden bij het starten van de realtime sessie.","An error occurred while processing your request. Please try again.":"Er is een fout opgetreden bij het verwerken van je aanvraag. Probeer het opnieuw.","An error occurred while committing the stats.":"Er is een fout opgetreden bij het vastleggen van de statistieken.","An error occurred while committing the discussion.":"Er is een fout opgetreden bij het vastleggen van de discussie.","An error occurred while executing the function.":"Er is een fout opgetreden tijdens het uitvoeren van de functie.","Authentication failed: Your session has expired. Please refresh the page.":"Authenticatie mislukt: je sessie is verlopen. Ververs de pagina.","Error uploading image. Please try again.":"Fout bij het uploaden van de afbeelding. Probeer opnieuw.","Failed to access microphone: ":"Geen toegang tot microfoon: ","Failed to access microphone. Please ensure microphone permissions are granted and try again.":"Geen toegang tot microfoon. Zorg ervoor dat je microfoonrechten hebt en probeer het opnieuw.","Failed to establish connection with OpenAI servers. Please try again.":"Verbinding met OpenAI servers mislukt. Probeer het opnieuw.","Failed to read image file.":"Afbeeldingsbestand niet gelezen.","Failed to send image. Please try again.":"Afbeelding niet verzonden. Probeer het opnieuw.","Failed to upload image.":"Afbeelding uploaden mislukt.","Image file size must be less than 20MB.":"De afbeelding bestandsgrootte moet kleiner zijn dan 20MB.","Internal server error: An unexpected error occurred. Please try again.":"Interne serverfout: er is een onverwachte fout opgetreden. Probeer het opnieuw.","Invalid API key: Please check your OpenAI API key in settings.":"Ongeldige API-sleutel: controleer je OpenAI API-sleutel in instellingen.","Invalid request: The message format was not recognized by the server.":"Ongeldige aanvraag: het format van het bericht werd niet herkend door de server.","MediaDevices API not available. Please ensure you are using HTTPS and a modern browser.":"MediaDevices API niet beschikbaar. Zorg ervoor dat je HTTPS en een moderne browser gebruikt.","Model overloaded: The AI model is currently experiencing high demand.":"Model overbelast: het AI model is nu overbelast.","Network error: Failed to establish connection to the AI service.":"Netwerkfout: verbinding met AI dienst mislukt.","Please select an image file.":"Selecteer een afbeeldingenbestand.","Please start a session before uploading images.":"Start een sessie voordat je afbeeldingen uploadt.","Quota exceeded: You have reached your usage limit for this period.":"Quota overschreden: je hebt je gebruikslimiet voor deze periode bereikt.","Rate limit exceeded: Too many requests. Please try again later.":"Limiet voor waardering overschreden: te veel aanvragen. Probeer het later nog eens.","Service unavailable: The AI service is temporarily down for maintenance.":"Dienst niet beschikbaar: de AI dienst is tijdelijk buiten gebruik voor onderhoud."},"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":"nl_NL","trp_original_language":"ru_RU","trp_current_language":"nl_NL","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":"b49abb0a19","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":"19.011348805147","heartbeat_control_enabled":"1","nonce":"3447c9711e","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_26610044-js-before data-type=lazy data-src=data:text/javascript;base64,CndpbmRvdy5ndHJhbnNsYXRlU2V0dGluZ3MgPSAvKiBkb2N1bWVudC53cml0ZSAqLyB3aW5kb3cuZ3RyYW5zbGF0ZVNldHRpbmdzIHx8IHt9O3dpbmRvdy5ndHJhbnNsYXRlU2V0dGluZ3NbJzI2NjEwMDQ0J10gPSB7ImRlZmF1bHRfbGFuZ3VhZ2UiOiJydSIsImxhbmd1YWdlcyI6WyJhZiIsImFtIiwiYXIiLCJoeSIsImF6IiwiYmUiLCJibiIsImJzIiwiemgtQ04iLCJ6aC1UVyIsImhyIiwiY3MiLCJkYSIsImZpIiwia2EiLCJlbCIsIml3IiwiaHUiLCJpcyIsImlkIiwiamEiLCJrayIsImtvIiwia3kiLCJsdiIsImx0IiwibW4iLCJteSIsIm5vIiwiZmEiLCJwdCIsInJ1Iiwic2siLCJzbCIsInN3Iiwic3YiLCJ0aCIsInRyIiwidWsiLCJ1eiIsInZpIl0sInVybF9zdHJ1Y3R1cmUiOiJzdWJfZGlyZWN0b3J5IiwiZmxhZ19zdHlsZSI6IjJkIiwiZmxhZ19zaXplIjoyNCwid3JhcHBlcl9zZWxlY3RvciI6IiNndC13cmFwcGVyLTI2NjEwMDQ0IiwiYWx0X2ZsYWdzIjpbXSwiY3VzdG9tX2NzcyI6Ii5ndHJhbnNsYXRlX3dyYXBwZXIgLmd0X29wdGlvbiB7cG9zaXRpb246IGFic29sdXRlO2Zsb2F0OiByaWdodDt9IiwiaG9yaXpvbnRhbF9wb3NpdGlvbiI6ImlubGluZSIsImZsYWdzX2xvY2F0aW9uIjoiXC93cC1jb250ZW50XC9wbHVnaW5zXC9ndHJhbnNsYXRlXC9mbGFnc1wvIn07Ci8vIyBzb3VyY2VVUkw9Z3Rfd2lkZ2V0X3NjcmlwdF8yNjYxMDA0NC1qcy1iZWZvcmUK></script><script data-no-optimize=1 data-no-minify=1 data-gt-orig-url=/nl/blog/administrirovanie/sposoby-integratsii-s-1s data-gt-orig-domain=prohoster.info data-gt-widget-id=26610044 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>Wij gebruiken cookies <a target=_blank rel=nofollow href=https://prohoster.info/nl/kompaniya/privacy-policy/#cookie>cookie</a>, om de beste ervaring op onze site te garanderen. Door onze site te blijven gebruiken, gaat u akkoord met ons privacybeleid.</span> <span class=src-btn>Accepteren</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>Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers</span> <span id=gt-page-name>🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | 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>