1c 8.3'te harici işleme nasıl yapılır? Veritabanına harici işlem ekleme. Doğrudan bir dosyadan açma

  • 25.01.2021
2016-12-08T15: 04: 29 + 00:00

Kendim yayınladığım tedavilerimden örnekle anlatacağım.

1. İşlenen arşivi masaüstünüze indirin.

2. İndirilen arşive çift tıklayın, içeri alınacaksınız.

Dikkat! Arşivin içine girmediyseniz ("Uygulama bulunamadı" hatası yazıyor), ardından arşive sağ tıklayın ve seçeneklerden birini seçin:

      • Tümünü çıkar
      • 7-Zip ile aç
      • WinRar ile aç
      • Veya benzeri ...

3. İşlenen (ve zaten Rusça adı olan) bir dosya var. Üzerine sağ tıklayın ve "Kopyala" yı seçin.

4. Masaüstüne dönün, boş bir tablo alanına tekrar sağ tıklayın ve "Yapıştır"ı seçin ( veya işleme dosyasını arşivden masaüstünüze sürükleyebilirsiniz.).

5. Arşivden bir dosya masaüstünde görünmelidir.

Normal bir arayüz için

Menüden "Dosya-> Aç ..." öğesini seçin:

Kontrollü bir arayüz için (taksi vb.)

Doğrudan bir dosyadan açma

Menüden "Dosya" -> "Aç ..." seçeneğini seçin:

Görünen pencerede masaüstüne gidin, işlenen dosyayı seçin ve "Aç" düğmesini tıklayın.

Hazır! İşleme programda açılmalı ve kullanılabilir. Kolaylık sağlamak için masaüstünüzde özel bir "İşleme" klasörü oluşturabilir ve bu tür dosyaları orada saklayabilirsiniz.

İşlemleri veritabanına kaydediyoruz

Dosyayı açma aşamasında "Erişim ihlali!" hatası alırsanız:

Ardından, harici işlemenin açılmasına (bununla ilgili) izin vermeniz veya işlemeyi veritabanına kaydetmeniz gerekecektir - bunun için bunu yapmak kolaydır:

"Yönetim" bölümüne, "Formları, raporları ve işlemeyi yazdır" öğesine gidin:

Açılan pencerede "Ek raporlar ve işleme" onay kutusunu işaretleyin ve "Ek raporlar ve işleme" bağlantısını açın:

Açılan pencerede "Oluştur" düğmesini tıklayın:

Uyarıyı okuyun ve "Devam" düğmesini tıklayın:

Görünen pencerede masaüstüne gidin, işlenen dosyayı seçin ve "Aç" düğmesini tıklayın:

Bu aşamada "Bir dosyadan ek işleme bağlamak imkansız ..." hatası belirirse, "Dosya" -> "Aç" menüsünden dosyaların açılmasına izin vermek dışında işlemeyi açacak hiçbir şey kalmaz - bununla ilgili.

"Yerleşim" öğesini bulun ve tıklayın:

Bir sonraki pencerede, "İşlemler" bölümünü kontrol edin ve "Tamam" ı tıklayın.

Çoğu zaman, 1C ile çalışırken, zaman içinde sistematik olarak tekrarlanan ve sadece ana işten dikkati dağıtan aynı tür işlemlerin bazılarını yapmak gerekir. Bunlar çeşitli indirmeler ve kaldırmalar, harici analiz için bir tür verinin oluşturulması vb. Bu işlemleri otomatikleştirmenin ve aslında onları unutmanın oldukça basit bir yolu var, düzenli olarak kontrol için posta yoluyla günlük dosyaları alıyor.

Bu işlemler zaten harici işleme ile yazılmışsa harika, sorun değil, eğer durum böyle değilse, her şeyi orada oluşturun ve aktarın. Ayrıca, işlevselliği kontrol etmek için, tüm bunları manuel modda test etmenizi ve ardından, her şey olması gerektiği gibi çalışıyorsa, ana işlem kodunu yeniden yazmanızı, böylece harici işleme yüklendiğinde, düğmeye basmadan otomatik olarak başlamasını, yürütmesini ve gibi. En basit şey, kodu prosedüre taşımaktır. AçıkAçık ().

Bir sonraki adım, oluşturduğumuz harici işlemi gerçekleştirdikten sonra programı otomatik olarak kapatmaktır ve zaten bizim için çalışıyor. Bunu yapmak için prosedürde AçıkAçık () en sonunda aşağıdaki komutu girin: EndSystemWork (Yanlış); bu durumda parametre İstekFırsat Kapatırken ek sistem soruları için çeşitli seçenekleri kesmek için "Yanlış" değerini geçiyoruz, böylece bu harici işlem gerçekleştirildikten sonra 1C çalışmasının koşulsuz sonlandırılmasını başlatıyoruz. Emin olmak için programı tekrar çalıştırıp işleme yapıyoruz ve çalıştığından ve programın kendini kapattığından emin oluyoruz.

"C: \ Program Files (x86) \ 1cv8 \ 8.3.5.хххх \ bin \ 1cv8.exe" ENTERPRISE / DisableStartupMessages / FС: \ veritabanı yolu / N "KullanıcıAdı" / P "KullanıcıParolası" / Yürütme c: \ yol işlemek için \ self-processing.epf

deşifre edelim:

1. "C: \ Program Dosyaları (x86) \ 1cv8 \ 8.3.5.хххх \ bin \ 1cv8.exe" İŞLETME - bu durumda 1C motorunun kendisi 8.3, yolu kendiniz kontrol edin, sürüme bağlı olarak değişir ve motor dahil, sonuncuyu güncelledikten sonra düzenlemeyi unutmayın.

2. / DisableStartupMessages - sistem başlangıcında tüm mesajları devre dışı bırakın.

4. / N "KullanıcıAdı" / P "KullanıcıParolası" - sırasıyla / N kullanıcı adı, ayrıca boşluk ve / P şifresi olmadan.

5. / Execute c: \ işleme yolu \ self-processing.epf - / Execute işlemimizi başlatır, yol ve isim bu anahtarı takip etmelidir.

Şimdi hepsi bu, sadece cmd dosyamızı görev zamanlayıcıya eklemek kalıyor: avtozapusk1c.cmd lansmanı için programı belirleyerek.

Harici işlemenin çalışmasını izlemek için, bunun için ayrı bir kullanıcı oluşturmanızı öneririm, işlemin kendisinin de düzenli aralıklarla postanıza düşen bir günlük dosyası oluşturması hala en uygunudur.

Bunlar günlük rutin işlemleri otomatikleştirmeye yardımcı olan akıllı araçlar değil, size iyi şanslar!

Daha önce, veri tabanına o gün için girilen belge sayısını belge tarihine göre görüntülemenizi sağlayan harici bir işlem yazılmıştı. Neden yaratıldığı önemli değil. İşleme şekli ve uygulaması oldukça basittir:

İşlem kodunu yazının sonundaki linkten indirerek görebilirsiniz. Başka bir sorunu çözeceğiz. Bu işleme "Servis" menüsünden başlamamız gerekiyor:

Butona tıklandığında, "Tarihi kontrol et" alanına girilmiş olan güncel tarih ile işlem başlar.

Başlatmak

İlk olarak, "Tam" arayüze "Günlük belge sayısı" düğmesini ekleyin ve genel modülde bunun için bir işleyici prosedürü oluşturun.

İşleyici prosedürünün program kodu aşağıdaki listede gösterilmektedir:

Prosedür Tam Eylem () Dışa Aktarma // "Harici işleme" katalog öğesine bir bağlantı alın, // gerekli işleme dosyasının bulunduğu yer ReferenceToProcessing = Referanslar. Harici İşleme. FindByDesign (" Girilen belge sayısı", Hakikat); // İşleme dosyasının ikili verilerini geçici bir dosyaya yazın DosyaAdı = GetTemporaryFileName (); BinaryData = RefProcessing. DepolamaHarici İşleme. Almak() ; Ikili veri. Yaz (DosyaAdı); // Harici işleme formunu alın Form = Dış İşlemler. GetForm (DosyaAdı); // Kullanıcı için formu aç formu. Açık (); Prosedürün Sonu

Genel olarak, eylemlerin sırası aşağıdaki gibidir:

  1. "ExternalProcessing" katalog öğesine bir bağlantı alıyoruz.
  2. Dizinin bulunan öğesinde kaydedilen işleme dosyasının ikili verilerini çıkarıyoruz.
  3. Alınan ikili verileri geçici bir dosyaya yazıyoruz.
  4. Oluşturulan dosyayı kullanarak harici işleme formunu alıp açıyoruz.

Böylece, istemci bağlamının mevcut olduğu herhangi bir yapılandırma modülünden harici işleme / raporlar başlatabiliriz.

Avantajlar

Bu ne için? Tedavileri veya raporları doğrudan konfigürasyona eklemek daha kolay değil mi?

Evet, daha kolay. Ama ya tedaviyi sık sık değiştirirseniz? Bilgi tabanı her değiştiğinde güncellensin mi? İçerdiği tüm risklerle birlikte dinamik güncelleme kullanılsın mı?

Bu gibi durumlarda, işlevselliğin harici işleme / raporlara kaldırılması yardımcı olacaktır; bu, değişiklikten sonra "Harici işleme" dizininde basitçe değiştirebileceğimiz ve kullanıcıların yalnızca bunları yeniden başlatması gerekecek. Güncelleme gerekmez.

Makalede kullanılan "Belge sayısını sayma" işlemi.

Harici işleme, 1C: Enterprise 8.3'te tipik yapılandırmaları kullanan şirketler için çok uygun bir araçtır. 1C güncellemelerinde enerji ve para kaybetmemenize izin vererek, basit kullanıcı modunda tek bir tuşla veritabanlarını güncellemeyi mümkün kılar. Standart alt sistem kitaplığının mekanizmasını kullanarak, tipik yapılandırmayı değiştirmeden belgelere ve referans kitaplara çeşitli düğmeler ekleyebilirsiniz. 1C konfigürasyonlarından birinde harici işleme oluşturma ve bağlama örneğini ele alalım.

1C 8.3'te harici işleme oluşturuyoruz

Yeni bir harici işleme oluşturmak için yapılandırıcıyı kullanın. "Dosya" menüsünden "Yeni ..." oluşturma komutunu seçin ve harici işleme oluşturacağımıza karar verin. Açılan pencerede adı ayarlayın ve "Enter" tuşuna bastığınızda otomatik olarak doldurulur. Ayrıca sistem kaydederken dosya adı olarak size bu ismi sunacaktır.

İlgili pencerede büyüteç bulunan düğmeye tıklayarak bir işleme formu ekleyin. Örnek olarak, hangi satış siparişlerinin belirli bir kalemi kullandığını gösteren bir işlem oluşturalım. Bunu yapmak için forma yerleştirmemiz gerekiyor:

  • Nitelik - öğeyi ayarlamak için bir alan;
  • Kod çağrısını yürütecek düğme.

Uygun bölüme "ReferenceLink.Nomenclature" veri türü ve "Komutlar" -> "Form Komutları" menüsündeki "Göster" düğmesi ile "Nomenclature" özniteliğini ekleyin.

Eklenen verileri forma yansıtmak için sol üst kısımda bulunan form öğelerine sürüklemeniz gerekir. Mavi okları kullanarak öğeleri değiştirmek mümkündür. Oluşturduğumuz butonun istediğimizi yapabilmesi için bir prosedür atanması gerekiyor. Bağlam menüsünden "Komut eylemi"ni seçin ve işleyiciye nerede ihtiyaç duyulduğu sorulduğunda, "İstemcide oluştur ve sunucuda bir prosedür" yanıtını vereceğiz.


1. parça

& OnClient Prosedürü Göster (Komut) ShowAtServer (); EndProcedure & AtServer Prosedürü ShowAtServer () // İşleyicinin içeriğini ekleyin. Prosedürün Sonu

Sonuç olarak veritabanından bir seçim almak istediğimiz için sunucuda bir prosedür oluşturmayı seçtik. İstemcide böyle bir imkanımız yok, bu yüzden veritabanı ile veri alışverişi yapan sunucuya bağlanmamız gerekiyor. Şimdi amaçladığımız şeyi uygulayan bir kod yazmamız gerekiyor. "Rapor()" fonksiyonu ile tüm evrakların talep ve çıktıları kullanılacaktır.


2. Fragman

& OnClient Prosedürü Göster (Komut) ShowAtServer (Terminal); EndProcedure & AtServer Prosedürü ShowAtServer (Terminal) İstek = Yeni İstek; Request.Text = "FARKLI SEÇ | Müşterinin SiparişKompozisyonu.Ref.Bağlantı AS | KİMDEN | Belge.Müşterinin Siparişi.Müşterinin SiparişKompozisyonu Olarak İçerik | NEREDE | Müşterinin SiparişKompozisyonu.Nomenklatür = & Nomenklatür"; Request.SetParameter ("Adlandırma", Adlandırma); QueryResult = Query.Run(); FetchDetailedRecords = QueryResult.Select (); FetchDetailedRecords.Next () Döngü Raporu (FetchDetailedRecords.Link); Döngü Sonu; Prosedürün Sonu

Mevcut aşamada, başlatılan 1C veritabanında normal bir dosya olarak harici bir işlem açabiliriz ve zaten çalışır durumda olacaktır. Ancak çok sayıda kullanıcımız varsa, onlara tüm bu dosyayı göndermemiz ve 1C'de gerçekten nasıl açılacağına dair talimatlar vermemiz gerekecek, ki bu son derece elverişsizdir. Bunu önlemek için, işlemimiz 1C bölümlerinden birinin içine yerleştirilmelidir. Bunu yapmak için, belirli ayarları belirterek, yapılandırıcı aracılığıyla biraz daha değiştirmemiz gerekiyor.

Bölüm 1C'ye harici işleme yerleştirmek için, nesne modülünde "Harici İşleme Hakkında Bilgi" prosedürünü kaydetmesi gerekir. Ana işleme menüsünde "Eylemler"e tıklayın ve "Nesne modülü"nü seçin. Burada 1C için gerekli tüm ayarları kaydetmek gerekir, böylece sistem kendisinden neyin gerekli olduğunu ve önünde ne tür bir dosya olduğunu anlar. Ekran görüntüsü, "Harici İşleme Bilgileri" işlevinin kodunu gösterir.

Dış İşleme Bilgisi İşlevi () Veri ForReg'i Dışa Aktar = Yeni Yapı (); DataForReg.Insert ("Ad", "Yeni harici işleme"); DataForReg.Insert ("GüvenliMod", Doğru); DataForReg.Insert ("Sürüm", "ver .: 1.001"); DataForReg.Insert ("Görünüm", "Ek İşleme"); CommandTable = Yeni ValuesTable; TabZnCommands.Columns.Add ("Tanımlayıcı"); TabZnCommands.Columns.Add ("Kullanım"); TabZnCommands.Columns.Add ("Görünüm"); NewString = TabZnCommands.Add (); NewString.Identifier = "NewExternalProcessing"; NewStroka.Usage = "Form Açma"; NewStroka.View = "Yeni harici işleme"; DataForReg.Insert ("Komutlar", TabZnCommands); Kayıtlar İçin Veri İadesi; EndFunction

3. Fragman

Harici işlemeyi 1C'ye bağlama

Harici işlemeyi tipik bir konfigürasyona bağlamadan önce bu aracın kullanımını etkinleştirmelisiniz. "Baskı formları, raporlar ve işleme" alt maddesindeki "Yönetim" de, ihtiyacımız olan mekanizmanın karşısındaki bayrağı ayarlayın. Ek işleme ve raporların referans kitabına geçiş düğmesi bizim için kullanılabilir hale gelir.


Listeye gittiğimizde, içinde yeni bir satır oluşturun ve sistem bir dosya seçmeyi önerecektir. Yaptığımız işlenmiş ve kaydedilmiş işlemleri seçiyoruz ve 1C konfigürasyonu alanların çoğunu bağımsız olarak dolduruyor. "Çalıştır" düğmesi aracılığıyla, işlemimizin performansını zaten kontrol edebiliriz, ancak bu, diğer kullanıcılar için pek uygun değildir. Kullanıcıların ekibimize sahip olmaları ve arama yapabilmeleri için şunlara ihtiyacımız var:

  • Nesnenin yerini belirtin. "Tanımlanmamış" seçeneğine tıklayarak bölümler penceresini açıyoruz ve işlemin hangi bölümlerde yapılabileceğini belirtiyoruz;
  • Gereksiz ayarlar olmadan seçilen bölümlerin "Ek işleme" menüsünde bu komutun görüneceği kullanıcıları seçin. Bunu yapmak için, tablo bölümünde "Hızlı erişim" öğesini seçin ve sorumlu kullanıcıları sağ yarıya ekleyin;
  • "Ek Bilgiler" sekmesinde, yüklenen işlemin bulunacağı klasörü belirtebilirsiniz;
  • "Ek işleme" menüsünde seçilen bölümde "Yaz" butonuna bastıktan sonra kullanıcılar komutumuzu bulacak ve kullanabilecektir.

İşlemlerimizde değişiklik yapmak istiyorsak, önce onu veritabanından kaldırmalıyız. Bunu yapmak için, "Ek işleme ve raporlar" referans kitabında gerekli satırı bulun ve "Dosyaya yükle ..." komutunu kullanın. Değişiklikleri yapın, işlemi kaydedin ve değiştirilen epf dosyasını parametreleri değiştirmeden bulmak için "Dosyadan yükle ..." düğmesini kullanın. Kayıttan sonra tüm kullanıcılar yapılan değişiklikleri görecektir.

Standart olmayan veya destek 1C tabanından kaldırılmış bir kullanıyorsanız, yapılandırıcı aracılığıyla işleme yükleme fırsatını kullanın. Nesne ağacında, "İşleme" bölümünde yeni bir işleme oluşturun ve içerik menüsünden "Harici işleme ile değiştir, rapor ..." seçeneğini seçin. Geriye kalan tek şey, eklenen işlemeyi gerekli alt sisteme dahil ederek gerekli bölümden harici işlemenin başlatılmasını yapılandırmak.


Harici işleme ile çalışmak çok uygundur ve birçok çakışmayı önler. Tek önemli dezavantajı, yapılandırmayla birlikte otomatik olarak güncellenmemeleridir. Diğer bir deyişle, geliştiriciler ana yapılandırmada bir belgenin veya referansın adını değiştirmişse, işlemeyi manuel olarak yapılandırmamız gerekecektir.

Menünün en üstüne git Hizmet->->.

Harici işleme referans kitabı listesinin formu görünür. Üst menüde, düğmesine basın Ekle.

Yeni bir nesne eklemek için bir form görünecektir. Aç düğmesine basıyoruz ve istenen işleme sahip dosyayı seçiyoruz. Gerekli dosyayı seçtikten sonra, gerekirse işleme adını belirtin (Ad alanında). Bundan sonra, yapılan değişiklikleri kaydetmek için Tamam'a tıklamanız gerekir.

Bundan sonra, bir katalog öğesi oluşturma penceresi kapatılır ve zaten yeni bir işlemin olduğu liste formuna geri dönersiniz.

Bu kadar! Yapılandırmaya işleme ekleme işlemi tamamlandı. Bu işlemi daha sonra açmak için eski yolu izleyin: Hizmet->Ek raporlar ve işleme->Ek harici tedaviler.

BP 3.0, ZUP 3.0, UT 11, ERP 2.0 için.

1C: Enterprise 8 için harici işlemler çeşitli tiplerdedir. Bu öğreticide, toplu değişiklik için işleme eklemeyi ve belirli nesneleri doldurmak için işlemeyi nasıl ekleyeceğinizi göstereceğim.

İlk durumda, Excel'den stok listesini doldurmak için işleme ekleyelim.

Programın uygun bölümüne gidin:


Ek raporlar ve işleme kullanma işaretinin ayarlanması gerekir, harici nesneler listesine giden köprüyü izleyin:

Listede, tıklayın Oluşturmak:


Açılan iletişim kutusunda, işleme ile istediğiniz dosyayı seçin:


Programdaki yeni bir harici nesnenin kartı dolduruldu, sadece yapılandırmak için kaldı Konaklama(programın işleme alınabilecek bölümleri):


Yerleşim olarak isteğe bağlı bir bölüm (veya birkaç) seçin:


Dış nesnenin kartını yazıp kapatıyoruz:


Şimdi arayüzden işlemeyi açalım:


Liste boş, tıklayın Listeyi özelleştir:


İşlememizi seçiyoruz:


Artık seçim için kullanılabilir. İşlemi açmak için tıklamanız gerekir Uygulamak:


Şimdi belirli nesneleri doldurmak (değiştirmek) için işlemenin nasıl eklendiğini görelim. Örneğin, taramaları sistemin dizinlerinin veya belgelerinin seçili öğelerine ekleyen harici bir işlemi ele alalım. Bu tür işlemlerin eklenmesinin başlangıcı, önceki seçenekten farklı değildir. Aradaki fark, bu durumda konumun otomatik olarak doldurulmasıdır (program bölümü tarafından değil, veritabanı nesnelerinin türleri tarafından):


İstenirse yerleşim listesi ayarlanabilir ( ek yerleşim eklemeyin, gereksizleri kaldırın):


Değişikliği kabul etmek için harici nesnenin kartı da kaydedilmelidir.

İşlemi kullanmak için belirli bir temel nesneye (yerleşim listesinden) gitmeniz, öğeyi tıklamanız gerekir. Doldurun komut panelinde ve komutu seçin: