Evrensel bir format ürünleri aracılığıyla 1c veri senkronizasyonu. Evrensel veri alışverişi kullanımının görünümü ve özellikleri

1C 8 değişim kuralları geliştirirken, değişim kurallarının davranışını programlı olarak yeniden tanımlama olasılığı yaygın olarak kullanılır - işleyici mekanizması. Olay işleyicileri, işlevselliği önemli ölçüde genişletir ve etkileşimli yapılandırma yeteneklerinin yeterli olmadığı durumlarda değişim kurallarını ayarlamak için vazgeçilmez bir araçtır.

İşleyiciler ve algoritmalar, değişim sırasında yürütülecekleri platformun dilinde yazılır.

1C: Enterprise 7.7 platformuysa, işleyici kodu, yükleme veya indirmeyi işlemek için koda entegre edilir. Buna göre, her bir işleyici veya algoritma ayrı bir işleve tahsis edilir ve değişim sırasında hata ayıklama için kullanılabilir.

Yükleme veya indirme 1C: Enterprise 8 platformunda gerçekleşirse, işleyici kodu veri alışverişi işleme koduna entegre edilmez, ancak değişim kuralları dosyasına yüklenir. Veri alışverişi sürecinde, işleyicilerin veya algoritmaların kodu, kurallar dosyasından alınır ve doğrudan "Execute" ifadesi bağlamında yürütülür. İşleyici ve algoritma kodunda hata ayıklamak için Evrensel XML Veri Değişimi işlemeyi kullanabilirsiniz.

Bu makalede, evrensel EnterpriseData formatı aracılığıyla veri alışverişini organize etme konusundaki şimdiye kadarki küçük deneyimimi anlatacağım.

Benim durumumda, değişim "Ticaret Yönetimi 11.2" (bundan böyle UT olarak anılacaktır) ve "Kurumsal Muhasebe 3.0.43" (bundan sonra BP olarak anılacaktır) konfigürasyonları arasında yapılandırılmıştır. Değişim, UT'den BP'ye tek yönlüdür. Trade Management 11.1'den 11.2 sürümüne yükseltmeden önce, veri alışverişi Data Conversion 2.0 yapılandırması kullanılarak yapılandırıldı. Ancak, "Ticaret Yönetimi"nde "11.2"ye geçtikten sonra, kullanıcıların çalışmasında hatalar ortaya çıktı. Değişim kurallarını güncelleme prosedürü gerçekleştirildi, ancak bu herhangi bir sonuç vermedi. Hata ayıklayıcı, sorunun iletişim olduğunu gösterdi. Her iki konfigürasyonda da iletişim ayarının kaldırılmasına ve yeniden kurulmasına karar verildi.

Hem "Ticaret Yönetimi" hem de "Kurumsal Muhasebe" bizim için müşteri-sunucu versiyonunda çalışır. UT ile senkronizasyonu kurmaya başladım. Veriler UT'den bir dosyaya boşaltılacak şekilde yürüttüm. Yani, bir ağ dizini aracılığıyla senkronizasyon. Güç kaynağı ünitesinde, güç kaynağı ünitesinden hiçbir veri boşaltılmayacak şekilde santrali kurdum.

Bağlam yöntemi çağrılırken bir hata oluştu (Kontrol): XDTO verileri kontrol edilirken hata oluştu:
"/ Karşı Tarafın Banka Hesabı / Bankası" nesnesinin yapısı şu türe uymuyor: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1)
"BIC" özelliğinin kontrol edilmesi:
Şekil: Eleman
ad: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1) BIC
bir çeşit:
Gerekli özellik eksik
Konu: Karşı taraf No. ... ile sözleşme

Hatayı analiz etmek için "Gönderilecek verilerin bileşimi" simgesine tıkladım ve sevkıyat için kayıtlı yükleniciler listesinde bir hatanın ortaya çıktığı bir anlaşma buldum. Sözleşmeyi açtı, karşı tarafın sözleşmede belirtilen banka hesabını hatırladı. Ardından sevkiyat için kayıtlı banka hesaplarına geçiş yaptım. Gerekli hesabın kayıtlı olanlar listesinde olmadığı ortaya çıktı. Sorunlu banka hesabını ve sözleşmeyi yeniden gönderdim. Bundan sonra, gerekli banka hesabını manuel olarak kaydettim.

UT'den verileri tekrar senkronize etmeye çalıştım. Bu sefer, veriler başarıyla kaldırıldı. Oluşturulan ağ klasöründe XML dosyası UT'den BP'ye aktarım için veri içeren.

Sonraki adım, bir dosyadan Kurumsal Muhasebe Departmanına veri yüklemektir. "Kurumsal Muhasebe" konfigürasyonunda "Senkronize Et" butonuna bastım, "Veri analizi devam ediyor" mesajlı bir işlem formu açıldı. Biraz sonra, mesaj "Verileri boşaltıyor" olarak değişti. Aynı zamanda, gösterge ve sayaç, güç kaynağı ünitesinden 80 binden fazla nesnenin boşaltıldığını gösterdi. Bu beni şaşırttı, çünkü ayarlarda güç kaynağı ünitesinden hiçbir şeyin boşaltılmaması gerektiğini belirttim. İşlem oldukça uzun sürdü ve bir hatayla sonuçlandı:

Etkinlik: Veri Değişimi
(SharedModule.LongedOperations.Module (371): İş akışı anormal şekilde sonlandırıldı arka plan işi
CallException (ErrorText);

Hatayı yerelleştirmek için BP tabanının senkronizasyon ayarlarını ve çalışma seçeneklerini değiştirmeye çalıştım. Sonuç olarak, veritabanını dosya sürümüne geçirdiğimde sistem yeterince çalıştı: iki veritabanını karşılaştırma formu açıldı. Nesneleri eşleştirdikten sonra ilk senkronizasyon başarılı oldu. Sonra veritabanını tekrar istemci-sunucu sürümüne geçirdim.

Senkronizasyonun daha sonraki "çalışması" sırasında, nesneleri dönüştürmek için kurallarda bazı değişiklikler yapmak gerekiyordu. Şimdi Data Conversion 3.0 yapılandırmasını kullanma zamanı. Çevrimiçi yapılandırma yardımı, nasıl çalışılacağını açıklar. ITS web sitesindeki makaleler de yardımcı oldu.

Sonuç olarak, aşağıdaki verileri "Data Conversion 3.0"a yükledim:

  • İki temelden "DataExchangeManagerViaUniversalFormat" ortak modülünün metinleri
  • Her iki tabanın şeması
  • EnterpriseData formatının açıklaması (herhangi bir veritabanından)
  • Dönüşüm kuralları

İndirdikten sonra "Data Conversion 3.0" da verileri, nesneleri, özellikleri dönüştürme kurallarını açtım. Benim için gerekli düzenlemeleri yaptı. Sonra "Değişim yöneticisi modülünü kaldır" düğmesini kullandım. Modül metni panoya kopyalandı. Sadece konfigürasyona eklemek için kalır.

"Data Conversion 3.0" da kuralları ayarlamayı denedikten sonra, yapılan değişikliklerin önemsiz olması durumunda, "DataExchange" ortak modülünde kuralları doğrudan UT ve BP yapılandırmalarında ayarlamanın daha kolay olduğu sonucuna vardım. YöneticiVia UniversalFormat". Düzenlemeler, örneğin borsaya yeni bir nesne eklemek gibi ciddiyse, yapılandırmayı kullanmalısınız " Veri Dönüştürme 3.0 ".

"Tedarikçiye sipariş" belgesini değişim planına ekleme görevini "kullanarak gerçekleştirdim. Veri dönüştürme 3.0 ". UT - BP'nin standart versiyonunda bu belge değişim planında yer almamaktadır.

Boşaltma için nesneleri kaydetme kurallarının hala "Veri Dönüştürme 2.0" yapılandırmasında yapılandırıldığını unutmayın.

Bunlar, evrensel EnterpriseData formatı aracılığıyla veri senkronizasyonunun ilk izlenimleridir.

not Evrensel Biçim ve Yapılandırma yoluyla veri alışverişi hakkında sorularınız ve kendi gözlemleriniz varsa " Data Conversion 3.0 ", yorumlara yazın. Deneyim alışverişinde bulunacağız.

  • Veri senkronizasyonu
  • Genel Kurumsal Veri Biçimi
  • Veri Dönüştürme 3.0
  • Veri Dönüştürme 2.0
  • Ticaret yönetimi
  • kurumsal muhasebe

2018-11-15T19:32:35+00:00

Evrensel işleme "Yükle ve indir XML verileri"bilgi tabanı verilerinin XML formatındaki bir dosyaya tam veya kısmi olarak boşaltılmasını gerçekleştirir. Daha sonra, bu dosya aynı işleme kullanılarak bilgi tabanına yüklenebilir. Boşaltma dosya formatı, değişim planına göre boşaltma sırasında oluşturulan dosya formatından farklıdır. başlık kısmı.

İşleme yalnızca şu durumlarda kullanılabilir: bilgi tabanı, verilerin yüklendiği ve verilerin yüklendiği homojendir (konfigürasyonlar aynıdır, veriler farklı olabilir) veya tüm yüklenmemiş nesneler bileşim ve nitelik türleri ve tablo bölümleri, özellikleri bakımından neredeyse tamamen aynıdır. "önde gelen" meta veri nesnesi vb.

Bu işlemenin kullanımı, örneğin tam veya kısmi bir işlem oluşturmak için mümkündür. destek olmak veri alışverişi, bilgi tabanları arasında veri alışverişi ve ayrıca başarısız bilgi tabanlarının kurtarılmasında yardımcı bir araç olarak.

İşleme, döneme göre bir seçim belirtme yeteneğiyle verilerin yüklenmesini destekler. Ayrıca, XML aracılığıyla değiştirildiğinde nesneler geçersiz karakterler için kontrol edilir.

Saygılarımla, (öğretmen ve geliştirici).

Bu makaleyi mailime gönder

1C üsleri arasında bir değişim uygulama ihtiyacının ana nedenleri, şubelerin varlığı ve muhasebe türlerinin ayrılmasıdır, çünkü genellikle şirketler birkaç bilgi tabanında faaliyet gösterir. 1C 8.3'ün değişimini kurmak, çift çalışmanın yürütülmesini hariç tutmanıza izin verir - aynı belgeleri ve referans kitaplarını iki programa girmenin yanı sıra çeşitli şubeler ve bölümler için gerekli sistem nesnelerini derhal tedarik edin.

Şubeler arası değişim yapılması gerektiğinde RIB (Dağıtılmış Bilgi Tabanı) kullanılır. Aynı konfigürasyonlar arasında bir değişim mekanizmasıdır. Bir çift ilişkili düğümün altında en önemli kök düğümü olan bir ağaçtır. Bu sistemin herhangi bir düğümünde değişiklik yapılabilir ve bunlar diğer ilgili düğümlere aktarılacaktır. Sadece verilerin değil, aynı zamanda kök düğümden astlara yapılan konfigürasyon değişikliklerinin dağıtımı da aynı şekilde gerçekleştirilir.

Muhasebe türlerini ayırmak gerekirse, örneğin ticaret tabanında işlerliği sürdürmek ve muhasebede düzenlenirse, evrensel değişim mekanizmaları mevcuttur. esnek ayarlar veri senkronizasyonu.

1C'deki en son gelişmelerden biri EnterpriseData veri değişim formatıdır. Kullanımı kolaydır ve bir şirket içinde hem 1C veritabanları hem de üçüncü taraf programları arasında değişim için tasarlanmıştır.

İşletmede veri alışverişinin uygulanması, sıralı prosedürler şeklinde temsil edilebilir.

Öncelikle mübadelenin hangi bazlar arasında olması gerektiğini belirlemek gerekir; iki yönlü mü yoksa tek yönlü mü olacak; tek taraflıysa, hangi üs bilgiyi iletecek ve hangisi sadece alacak; karmaşık bir şube ağı ise, üslerin inşası için bir plan yapılması gerekir.

Ardından uygun formatı seçiyoruz: RIB, evrensel format; değişim kurallarına göre değişim; değişim kuralları olmadan değişim.

Bir sonraki adım, değişimi gerçekleştirmek için bir nakliye seçmektir. Çok çeşitli teknolojiler mevcuttur, ana olanları vurgulayacağız: bir dizin (yerel veya ağ), bir FTP kaynağı, COM bağlantıları, bir web hizmeti, e-posta.

Dördüncü adım, verilerin tanımı olacaktır: belgeler, dizinler ve gerekirse aktarılacak bireysel ayrıntılarına kadar detaylandırma.

Ve sonuç olarak, değişim sıklığının programı belirlenir.

1C 8.3 değişimini kurmak için her seçenek dikkatli bir hazırlık gerektirir. Uygulanması her kullanıcının gücünün ötesindedir, burada birçok nüansı hesaba katmak ve değişim ilkelerini anlamak gerekir. Veritabanlarının: değişiklikler veya çok sayıda ek içermesi durumunda, ayarlamaya özellikle dikkat edilmesi gerekecektir. ayrıntılar, platform sürümlerinde farklılık gösterir veya yapılandırmaların eski sürümleri kullanılır, kuruluş büyüktür ve kullanır otomatik sistemçok sayıda bazdan oluşur. Hatalar burada kabul edilemez, çünkü onarılamaz sonuçlara yol açabilir. 1C'de bağımsız değişim uygulaması, yalnızca tipik yapılandırmalar arasında basit bir bilgi aktarımı ayarlamanız gerekiyorsa önerilir.

Yeteneklerinizden şüphe ediyorsanız, paradan tasarruf etmemek, ancak 1C 8.3 borsalarını kurmanın zor görevini çözmeye yardımcı olacak yetkili bir uzmanla iletişim kurmak daha iyidir.

Yine de, uzmanları dahil etmeden 1C değişimlerini yapılandırmaya karar verirseniz, ilk önce veritabanlarının kopyaları üzerinde test etmeniz ve çalışan veritabanlarında çalışmaya başlamadan önce, hata durumunda orijinal durumuna geri dönebilmeniz için yapılandırmaları kaldırmanız önerilir. .

Aşağıda, Trade Management 11 (UT) ve Enterprise Accounting 3.0 (BP) standart konfigürasyonları arasında tek taraflı olarak 1C 8.3 alışverişi kurmanın ayrıntılı bir örneği verilmiştir. Örnek, toptan ve perakende ticarete öncülük eden birçok şirket için geçerlidir. UT'de yönetim muhasebesi tutulur, BP'de düzenlenir, kullanıcıların çalışmalarını kolaylaştırmak için değişim gereklidir.

Bu algoritma başkaları için de çalışır. tipik konfigürasyonlar 1C 8.3 platformunda

Her şeyden önce, bilgi alıcısı için hazırlık çalışması yapacağız, yani. PSU için. Programı Enterprise modunda başlatıyoruz. Veri Senkronizasyonu sabitini ayarlamanız gerekir (Yönetim → Veri Senkronizasyonu bölümü).

Önek alanına dikkat edin, burada nesnelerin orijinal olarak hangi programda oluşturulduğunu daha sonra (referans kodunun veya belge numarasının değerine göre) ayırt etmenize izin verecek bir değer belirtmeniz gerekir. Örneğimizde, normal kısaltma uygundur - BP ve UT, 1C 8.3 değişim ayarı, çok sayıda baz ve aynı konfigürasyonlar arasında karmaşık bir değişim için yapılırsa, her biri için kendi anlaşılır tanımını girmeniz gerekecektir. temel.

Güç kaynağı birimi yalnızca bir bilgi alıcısı olduğundan, UT'yi kurmaya devam ediyoruz.

Burada, BP'de olduğu gibi, senkronizasyonu etkinleştirmeniz ve öneki belirtmeniz gerekir. Bu bilgi NSI ve yönetim → Veri senkronizasyon ayarları bölümünde mevcuttur.

Bir ayar yöntemi seçme Ayarları manuel olarak belirleyin. Daha öte.

Her iki program da aynı yerde bulunduğunda doğrudan bağlantı seçeneğini yükleyeceğiz. yerel ağ, bu ağdaki IB kataloğuna bağlanmak için parametreleri belirteceğiz ve ayrıca kullanıcıyla ilgili kimlik doğrulama bilgilerini (BP veritabanında) dolduracağız. Daha öte.

Sistem belirtilen verilerin doğruluğunu kontrol edecek ve olumlu bir sonuç olması durumunda 1C 8.3 değişim ayarları penceresini görüntüleyecektir.

Veri yükleme kurallarını değiştir bağlantısını tıklayarak değişim yürütme ayarlarına erişebilirsiniz. Referans verilerini netleştireceğiz - sadece belgelerde kullanılanları boşaltmak için, organizasyonu ve sözleşmelerle çalışma seçeneğini - referans olmadan, depolar bağlamında belgelerin bölünmesini seçeceğiz. Cari yılın 1 Mart'ında değişimin başlangıcı.

Girilen kuralları yazıp kapatıyoruz.

Örnekte tek yönlü bilgi aktarımından bahsettiğimiz için, başka bir programdan veri almak için sonraki ayarlar penceresinde Değerleri gönderme seçeneğini ayarlayın. Yak ve kapat. Daha öte.

Şimdi girilen parametreleri kontrol etmeniz gerekiyor ve eğer doğrularsa İleri'ye tıklayın, aksi takdirde Geri'ye tıklayarak önceki adıma dönün.

Ardından, senkronize etmeniz istenecektir. Bitir'i tıklayın.

İki konfigürasyonun aynı nesnelerini ilişkilendirmek gerekirse, veri karşılaştırması için bir pencere açılacaktır. Karşılaştırmayı yapıyoruz ve İleri'ye tıklıyoruz.

Nesneleri aktarırken problemli durumlar ortaya çıkabilir; veri senkronizasyonu sırasında uyarılar linkine tıklayarak sonuçları görüntüleyebilirsiniz.

Senkronizasyon tamamlandıktan sonra, bu işlemin başarıyla tamamlandığını onaylayan bir pencere açılacaktır.

Burada, Yapılandır komutuyla veya daha sonra, senkronizasyon komut dosyasında, otomatik değişim için zamanlamayı yapılandırabilirsiniz.