internet pencereler Android
Genişletmek

Tablo bölümünü dolduracağız. Geçerli Tablo Bölüm Hattı Nasıl Gidilir?

Bu yazıda, en basitini yazma sürecini düşünün dış işleme Tablo bölümünü doldur 1C 8. Kullanılan yapılandırmalar için normal uygulama. Örneğin, böyle bir görevi alın: "Yapılandırmada 1C: Muhasebe 2.0 Tablo bölümünün harici katlanması oluşturun Ürün:% sbelge Mal ve hizmetlerin gerçekleştirilmesi, Tablo bölümünden almak için doldurma verileri Ürün:% s belge Mal ve hizmetlerin kabulü". Bu şekilde, satış ürünlerini mal makbuzuna dayanarak doldurmamız gerekiyor, böyle bir görev programcı 1C'nin gerçek uygulamasında oldukça sık bulunur.

2. Dış işlem oluşturma

B'ye git. 1C 8. Modda Konfigüratör. Menüyü kullanma Dosya -\u003e Yeni veya piktogram yeni belge yeni oluşturmak dış işleme.

Alanda İsim vermek "En basit tekrar kodlama" ve dış işlemeyi devam ettiriyoruz hdd Menüyü kullanma Dosya -\u003e Kaydet veya piktogram Kayıt etmek veya anahtar kombinasyonu CTRL + S..

Şube vurgulama Gereklilikler İşleme meta veri ağacında ve düğmeye basarak Ekle(Yeşil Plus ile düğme), yeni bir dış işleme sahibinin oluşturulması - Belge ücreti, bunun için bir tür seçin Drovernik belgeleri. DUTENITETOVARYAVSHODSHUG tarafından, bu sahne belgeyi seçmesi gerekir Mal ve hizmetlerin kabulü, uygulamanın doldurulacağı temelinde.

Bir giriş belgesi seçmek için ayrı bir forma ihtiyacımız olacak. Şube vurgulama Formlar ve aynı düğmeyi kullanarak - Ekle Harici bir işlem formu oluşturun. Form Oluşturucu penceresi açılır, tasarımcının ilk sayfasında herhangi bir değişiklik yapmanız gerekmez, bu yüzden sadece düğmeyi tıklayın. Daha ileri.

Tasarımcının ikinci sayfasında, sahne seçmemiz gerekir. Belge ücreti(böylece ortaya çıktı oluşturulan form) ve düğmeye tıklayın hazır.

Bundan sonra, oluşturulan form açılacak, kullanıcının üzerindeki belgeyi seçmemize ve kapanacağına ihtiyacımız var. Peki düğmeye bastığınızda Gerçekleştirmek Form basitçe kapanmalıdır. Bunu uygulamak için düğmeyi seçin. GerçekleştirmekBT sağ fare düğmesine tıklıyorum ve öğeyi seç Özellikleri. Düğmenin özelliklerinde, ipte davranmak Eylem seçin - Kapat. Bu çalışmada form ile tamamlanır, kapatır.

3. Programlama

Tablo bölümünün işlenmesini programlamaya devam edeceğiz. Hadi gidelim Nesne modülüdış işlem (işleme paneli düğmesinin altında Eylemler -\u003e Nesne Modülünü Aç).

İçinde, bir ihracat prosedürü oluşturmamız gerekiyor. Başlatmak.

Prosedür Başlatmak İhracat Ekstrüdreler

Bunu not et prosedür Başlatmak, ve tüm parametrelerinin yanı sıra, doldurma tablo parçasının dış işleme için zorunludur.Oluşturmazsanız veya tüm parametreleri belirtmezseniz, işlem yapınız işe yaramaz.

Şimdi bir program kodu yazmaya başlayalım. İlk önce, belgenin tablo kısmı için bir değişken oluşturun. Mal ve hizmetlerin gerçekleştirilmesihangi dolduracağız.

Watchboard \u003d Nesne [NameTagged];

Prosedürü parametrede gerçekleştirirken Bir obje doldurduğumuz belgenin bir nesnesini ve parametresinde İsimlendirilmiş Doldurduğumuz tablo bölümünün adına sahip bir dize. Böylece, bu kod satırı, doldurulmuş belgenin tablo kısmını adıyla alır.

Belgeyi seçmek için kullanıcıyı seçmemiz gerekir. Mal ve hizmetlerin kabulüBu nedenle, belge seçiminin şeklini açmak için kodu yazın. Başlamak için, bu formu harici işleme yöntemini kullanarak bir değişkene alırız. İsteğe bağlı (<Форма>, <Владелец>, <КлючУникальности>) . Sadece bu yöntemin ilk parametresini dolduruyoruz, oraya formumuza adlandırılan bir dize.

FormAvaility / Access \u003d Seçenekler ("Form");

Şimdi, modal açıklığı kullanarak ortaya çıkan formu açın (form açıksa, diğer tüm 1C pencereler mevcut değildir), çünkü bu durumun geleceğini açma yöntemiyle prosedürdeki kodumuzu Başlatmak Kullanıcı formu kapatana kadar yürütülmeyecektir.

Şikayetin formsuzasyonu. Openmodally ();

Kullanıcı formu kapattıktan sonra, talebin doldurulup doldurulmadığını kontrol etmemiz gerekir. Belge ücreti(Makbuz belgesinin seçilmediği durumunda). Eğer kontrol ettikten sonra Belge ücreti Boş olduğu ortaya çıktı, daha sonra daha fazla işlem mantıklı değil ve kesilmelidir.

Eğer nezaret edilmemişseniz (DocumentAmampsion) Sonra Rapor Et (); Geri ödeme; Bitti;

Sahne işlemlerinin tamamlanmasını doğrulamak için, küresel bağlam işlevi burada kullanılır. Belge doldurulur (<Значение>) , Değerin, aynı türün varsayılan değerinde iletilip gösterilmeyeceğini kontrol eder. Prosedür Rapor etmek 1C 8 mesaj penceresinde belirtilen metni görüntüler. Anahtar kelime Dönüş Prosedürün yürütülmesini durdurur.

Verileri seçecek bir sorgu yazmaya başlayacağız. Ürün:% s belge Mal ve hizmetlerin kabulü. Yeni bir istek oluşturun:

Talep \u003d yeni istek;

İstek. Kurulum parametresi ( "Documentampsion", Documentampsion);

İsteğin metnini yazın, Tasarımcı sorgusu. Sorgu metninin metnini manuel olarak yazmanız önerilmez, etkili değildir ve bir sürü zaman alır. Başlamak için, bir dize yazın:

Request.Text \u003d "";

İmleci, alıntıların karakterleri arasında sağlayacağız, farenin sağ tuşunu tıklatın ve öğeyi seçin. Talep Tasarımcısı .... Bundan sonra, bir teklif yeni bir istek oluşturuyor gibi görünecek, "Tamam" düğmesini tıklayın. Tasarımcı penceresi açılır, mevcut tüm veritabanı tabloları sol kısımda bulunur, bir belgeye ihtiyacımız var Adaitetovarov Superivug. Bulacağız ve "+" sembolünü kullanarak ortaya çıkaracağız, tablo parçasını seçin Ürün:% s ve onu çağrılan tasarımcı ekranının ikinci kısmına çekerek Tablolar(Ayrıca, "\u003e" düğmesini kullanarak istediğiniz tabloyu hareket ettirin).

Şimdi seçtiğimiz "+" tabloyu ortaya koyuyor ( Adaitovyovarovyovservyvaryovas) ve Dolgumuz için gerekli alanları, adlandırılan tasarımcı ekranının üçüncü bölümünde sürükleyin - Alan. Mevcut tüm alanları seçmeyeceksiniz, kendimizi böyle bir set için kısıtlayacağız: İsimlendirme, numara, fiyat, miktar, Stavans, Summands.

Sadece bir başvuru belgesi için verilere ihtiyacımız olduğundan (doldurmadan önce seçtiğimiz), sonra "Koşullar" sekmesinde, bizim tarafımızdan transfer parametresini kullanarak belge bağlantısı için durumu koyacağız.

Bu tasarımcıya bir sorgu metni oluşturma Tamamlanır, "Tamam" düğmesini tıklayın. Sonuç olarak, aşağıdaki sorgu metnini ortaya çıkardık:

Request.Text \u003d "Seçmeli | Nerede |

Oluşturulan istek yalnızca değişkeni yapmak ve boşaltmak için kalır:

Sonuç \u003d sorgu. Dolgu (). Unload ();

Değişkende Sonuç Tablo bölümleri sıralı değerli değerler tablosu Ürün:% s Belgeleri seçtik Mal ve hizmetlerin kabulü. Şimdi tablo parçasını doldurmaya başlayabilirsiniz Ürün:% s Uygulamamız. Ancak verileri doldurmadan önce, zaten bazı çizgiler varsa temizlenmelidir.

Watchchast.inter ();

Döngü ile Her biri için Sorgu sonuçlarıyla değerlerin tablosunu yürüyün.

Endrüsün sonuç döngüsünden kaynaklanan her bir eleman için;

Bu döngüde, belgenin tablo kısmının dizesini oluşturun ve doldurun. Mal ve hizmetlerin gerçekleştirilmesi. Bir değişkenle yapabileceğimiz yeni bir dize oluşturun Devre parçalarıHangi eylemleri yapabilirsiniz.

NewStrocatch \u003d Watch zinciri. Eklemek ();

Sekmenin oluşturulan sekmesini doldurun. Sorgu sonuç dizisinden veri parçaları prosedürü kullanarak Küresel bağlam - Doldurarak (<Приемник>, <Источник>) .

Doldurma (Newstock, Elementural sonuçları);

Ancak bizim tarafımızdan tamamlanan veriler yeterli değil, böylece belge yapılacak, daha fazla doldurmalısınız muhasebe Hesapları Adlandırma. Bunu yapmak için, ihracat kullanıyoruz

prosedür FillingSetetTings Yönetimleri Belge Nesne Modülünden Mal ve hizmetlerin gerçekleştirilmesi. Parametreyi kullanarak arayın Bir obje(Belirtilmelidir,

sadece ne diyebiliriz ihracat Belge nesnesinin modülünden prosedürler).

Nesne. İyileştirmeSetting (newstrokatch, isim verileri, gerçek);

Tablo bölümünün bu programlamasında 1C 8. Tamamlandı. İşlem kullanılabilir. İşlemin tam metni Başlatmak, öyle görünüyor:

Prosedür Başlatmak (Nesne, Namethe Adı \u003d Tanımsız, TabloPole \u003d Belirsiz) İhracat Watchboard \u003d Nesne [NameTagged]; FormAvaility / Access \u003d Seçenekler ("Form"); Şikayetin formsuzasyonu. Openmodally (); Eğer nezaret edilmemişse (DocumentPlease) daha sonra rapor etmek için ( "Seçilmiş Belge Makbuzu"); Geri ödeme; Bitti; Talep \u003d yeni istek; İstek. Kurulum parametresi ( "Documentampsion", Documentampsion); Request.Text \u003d "Seç | Adamitiovarovarovyovyovariovari.nanklatura, | Adamitiovarovarovyovyovyovari. Numarası, | Adamitetovarovyovyovyovarsa.stavankands, | Adamitovarovyovyovyovarsi.summa, | Adamitetovarovyovyovyovaryovas.Summands, | Adamitiovarovarovyovyovyovari.zena | | Belge. Dumstive değil tovarovyvug.thovarsa Admiretovarovasküler olarak. | Nerede | Promplementovarovarovyovyovyovars.link \u003d & documentampsions "; Sonuç \u003d sorgu. Dolgu (). Unload (); Watchchast.inter (); Her element için sonuçtan kaynaklanan sonuç, yeni bir çerçevenin döngüsü \u003d Clique listesi. Addly (); Doldurma (Newstock, Elementural sonuçları); Nesne. İyileştirmeSetting (newstrokatch, isim verileri, gerçek); Endcycle; Ekstrüdreler

Bir sonraki bölümde, tablo parçasını doldurmanın işlenmesini ve belgeye nasıl bağlanacağının işlenmesinin nasıl hata ayıklanacağı açıklanacaktır.

4. hata ayıklama

Yazdığınız kodu hata ayıklamak için oldukça sık. Tablo bölümünü doldurmanın işlenmesini hata ayıklamak için 1C 8. Sahne oluştur Bağlantı nesnesi Tip Belge Rulo.RealizationSerovyovserg.

Dolduracağımız hata ayıklama yaparken bir uygulama belgesi seçmek için gereklidir. Daha sonra, bir hata ayıklama şekli oluşturmanız ve orada oluşturulan gerekli olanı barındırmanız gerekir. Bağlantı nesnesiHata ayıklama formunu oluşturma süreci, makbuzun belgesinin seçimi şeklinin oluşturulmasından farklı değildir, bu nedenle bunun için detaylı olarak durmayacağız.

Form oluşturulduktan sonra, modülüne dönüyoruz. Otomatik olarak oluşturulan bir prosedür bulacağız Gelişmiş düğme. Bu prosedür düğmesine basıldığında yönetir Gerçekleştirmek. Prosedürden arayın Başlatmakİşleme modülündeki olan, parametrelerde belge nesnesini verecektir Mal ve hizmetlerin gerçekleştirilmesi(ki gereği alıyoruz Bağlantı nesnesi) ve başlık tablosu parçası olan dize (bizim durumumuzda) Ürün:% s).

Prosedür Doldurma düğmesi (düğme) Başlat (yansıtıcı nesneyi. Hazırlık nesnesi (), "mallar"); Ekstrüdreler

Şimdi, oluşturulan ana işlem şeklinin oluşturulması gereklidir. Bunu yapmak için, "İşleme Formu" alanında seçin.

Şimdi, prosedürün doğru yere bir kesme noktası koyabilirsiniz. Başlatmak veya prosedürler Gelişmiş düğme Hata Ayıklama Formları ve Hata Ayıklama Modunda Tablo Bölümünün İşlenmesini Çalıştırın 1C: İşletmeler.

5. Belgeye bağlayın

Dolum işlemesi yazıldıktan sonra ve hata ayıklandığında, yapılacağı belgeye bağlanmalıdır. Bunu yapmak için 1C 8. Modda şirketmenüde hareket Servis -\u003e Ek raporlar ve işleme -\u003e Ek dış işleme masa kısımları Ve Ekle yeni element Direktör. Düğmeyi kullanma Harici dosyayı değiştirin Tablo'yı doldurmak için bizim tarafımızdan oluşturulan bir dosya ekleyin.

Butonu kullanarak, bunu yapmak için işlenmeyi doldurun. Seçim Bir belge seçin Mal ve hizmetlerin gerçekleştirilmesi

Ve dolgunun tablo parçası için tasarlandığını belirtin Ürün:% s.

düğmesine basın TAMAM MI Ve hepsinde, doldurma işlemi menüde mevcut olacak Doldurmak tabakalı Ürün:% s belge Mal ve hizmetlerin gerçekleştirilmesi. Bu örnek için kullanılan işlemi, makalenin alt kısmında yapabilirsiniz.

1. Görevin Beyanı

Bu yazıda, doldurma tablo parçasının en basit dış işlemlerini yazma sürecini göz önünde bulundurun. 1C 8. Her zamanki uygulamayı kullanan yapılandırmalar için. Örneğin, böyle bir görevi alın: "Yapılandırmada 1C: Muhasebe 2.0 Tablo bölümünün harici katlanması oluşturun Ürün:% s Belge, doldurma için veri tablo bölümünden alın Ürün:% s belge Mal ve hizmetlerin kabulü". Bu şekilde, satış ürünlerini mal makbuzuna dayanarak doldurmamız gerekiyor, böyle bir görev programcı 1C'nin gerçek uygulamasında oldukça sık bulunur.

2. Dış işlem oluşturma

B'ye git. 1C 8. Modda Konfigüratör. Menüyü kullanma Dosya -\u003e Yeni veya piktogram yeni belge Yeni oluşturmak dış işleme.

Alanda İsim vermek Aşağıdakileri belirtiriz: "En basit tekrarlama" ve menüyü kullanarak sabit diske dış işlemeyi kaydedin Dosya -\u003e Kaydet veya piktogram Kayıt etmek veya anahtar kombinasyonu CTRL + S..

Şube vurgulama Gereklilikler İşleme meta veri ağacında ve düğmeye basarak Ekle(Yeşil Plus ile düğme), yeni bir dış işleme sahibinin oluşturulması - Belge ücreti, bunun için bir tür seçin Drovernik belgeleri. DUTENITETOVARYAVSHODSHUG tarafından, bu sahne belgeyi seçmesi gerekir Mal ve hizmetlerin kabulü, uygulamanın doldurulacağı temelinde.

Bir giriş belgesi seçmek için ayrı bir forma ihtiyacımız olacak. Şube vurgulama Formlar ve aynı düğmeyi kullanarak - Ekle Harici bir işlem formu oluşturun. Form Oluşturucu penceresi açılır, tasarımcının ilk sayfasında herhangi bir değişiklik yapmanız gerekmez, bu yüzden sadece düğmeyi tıklayın. Daha ileri.

Tasarımcının ikinci sayfasında, sahne seçmemiz gerekir. Belge ücreti(Oluşturulan formda görünmesi için) ve düğmeye tıklayın hazır.

Bundan sonra, oluşturulan form açılacak, kullanıcının üzerindeki belgeyi seçmemize ve kapanacağına ihtiyacımız var. Peki düğmeye bastığınızda Gerçekleştirmek Form basitçe kapanmalıdır. Bunu uygulamak için düğmeyi seçin. GerçekleştirmekBT sağ fare düğmesine tıklıyorum ve öğeyi seç Özellikleri. Düğmenin özelliklerinde, ipte davranmak Eylem seçin - Kapat. Bu çalışmada form ile tamamlanır, kapatır.

3. Programlama

Tablo bölümünün işlenmesini programlamaya devam edeceğiz. Hadi gidelim Nesne modülü Dış işlem (işleme paneli düğmesinin altında Eylemler -\u003e Nesne Modülünü Aç).

İçinde, bir ihracat prosedürü oluşturmamız gerekiyor. Başlatmak.

Prosedür Başlatmak İhracat Ekstrüdreler

Bunu not et prosedür Başlatmak, ve tüm parametrelerinin yanı sıra, doldurma tablo parçasının dış işleme için zorunludur.Oluşturmazsanız veya tüm parametreleri belirtmezseniz, işlem yapınız işe yaramaz.

Şimdi bir program kodu yazmaya başlayalım. İlk önce, belgenin tablo kısmı için bir değişken oluşturun. Mal ve hizmetlerin gerçekleştirilmesihangi dolduracağız.

Watchboard \u003d Nesne [NameTagged];

Prosedürü parametrede gerçekleştirirken Bir obje doldurduğumuz belgenin bir nesnesini ve parametresinde İsimlendirilmiş Doldurduğumuz tablo bölümünün adına sahip bir dize. Böylece, bu kod satırı, doldurulmuş belgenin tablo kısmını adıyla alır.

Belgeyi seçmek için kullanıcıyı seçmemiz gerekir. Mal ve hizmetlerin kabulüBu nedenle, belge seçiminin şeklini açmak için kodu yazın. Başlamak için, bu formu harici işleme yöntemini kullanarak bir değişkene alırız. İsteğe bağlı (<Форма>, <Владелец>, <КлючУникальности>) . Sadece bu yöntemin ilk parametresini dolduruyoruz, oraya formumuza adlandırılan bir dize.

FormAvaility / Access \u003d Seçenekler ("Form");

Şimdi, modal açıklığı kullanarak ortaya çıkan formu açın (form açıksa, diğer tüm 1C pencereler mevcut değildir), çünkü bu durumun geleceğini açma yöntemiyle prosedürdeki kodumuzu Başlatmak Kullanıcı formu kapatana kadar yürütülmeyecektir.

Şikayetin formsuzasyonu. Openmodally ();

Kullanıcı formu kapattıktan sonra, talebin doldurulup doldurulmadığını kontrol etmemiz gerekir. Belge ücreti(Makbuz belgesinin seçilmediği durumunda). Eğer kontrol ettikten sonra Belge ücreti Boş olduğu ortaya çıktı, daha sonra daha fazla işlem mantıklı değil ve kesilmelidir.

Eğer nezaret edilmemişseniz (DocumentAmampsion) Sonra Rapor Et (); Geri ödeme; Bitti;

Sahne işlemlerinin tamamlanmasını doğrulamak için, küresel bağlam işlevi burada kullanılır. Belge doldurulur (<Значение>) , Değerin, aynı türün varsayılan değerinde iletilip gösterilmeyeceğini kontrol eder. Prosedür Rapor etmek 1C 8 mesaj penceresinde belirtilen metni görüntüler. Anahtar kelime Dönüş Prosedürün yürütülmesini durdurur.

Verileri seçecek bir sorgu yazmaya başlayacağız. Ürün:% s belge Mal ve hizmetlerin kabulü. Yeni bir istek oluşturun:

Talep \u003d yeni istek;

İstek. Kurulum parametresi ( "Documentampsion", Documentampsion);

İsteğin metnini yazın, Tasarımcı sorgusu. Sorgu metninin metnini manuel olarak yazmanız önerilmez, etkili değildir ve bir sürü zaman alır. Başlamak için, bir dize yazın:

Request.Text \u003d "";

İmleci, alıntıların karakterleri arasında sağlayacağız, farenin sağ tuşunu tıklatın ve öğeyi seçin. Talep Tasarımcısı .... Bundan sonra, bir teklif yeni bir istek oluşturuyor gibi görünecek, "Tamam" düğmesini tıklayın. Tasarımcı penceresi açılır, mevcut tüm veritabanı tabloları sol kısımda bulunur, bir belgeye ihtiyacımız var Adaitetovarov Superivug. Bulacağız ve "+" sembolünü kullanarak ortaya çıkaracağız, tablo parçasını seçin Ürün:% s ve onu çağrılan tasarımcı ekranının ikinci kısmına çekerek Tablolar(Ayrıca, "\u003e" düğmesini kullanarak istediğiniz tabloyu hareket ettirin).

Şimdi seçtiğimiz "+" tabloyu ortaya koyuyor ( Adaitovyovarovyovservyvaryovas) ve Dolgumuz için gerekli alanları, adlandırılan tasarımcı ekranının üçüncü bölümünde sürükleyin - Alan. Mevcut tüm alanları seçmeyeceksiniz, kendimizi böyle bir set için kısıtlayacağız: İsimlendirme, numara, fiyat, miktar, Stavans, Summands.

Sadece bir başvuru belgesi için verilere ihtiyacımız olduğundan (doldurmadan önce seçtiğimiz), sonra "Koşullar" sekmesinde, bizim tarafımızdan transfer parametresini kullanarak belge bağlantısı için durumu koyacağız.

Bu tasarımcıya bir sorgu metni oluşturma Tamamlanır, "Tamam" düğmesini tıklayın. Sonuç olarak, aşağıdaki sorgu metnini ortaya çıkardık:

Request.Text \u003d "Seçmeli | Nerede |

Oluşturulan istek yalnızca değişkeni yapmak ve boşaltmak için kalır:

Sonuç \u003d sorgu. Dolgu (). Unload ();

Değişkende Sonuç Tablo bölümleri sıralı değerli değerler tablosu Ürün:% s Belgeleri seçtik Mal ve hizmetlerin kabulü. Şimdi tablo parçasını doldurmaya başlayabilirsiniz Ürün:% s Uygulamamız. Ancak verileri doldurmadan önce, zaten bazı çizgiler varsa temizlenmelidir.

Watchchast.inter ();

Döngü ile Her biri için Sorgu sonuçlarıyla değerlerin tablosunu yürüyün.

Endrüsün sonuç döngüsünden kaynaklanan her bir eleman için;

Bu döngüde, belgenin tablo kısmının dizesini oluşturun ve doldurun. Mal ve hizmetlerin gerçekleştirilmesi. Bir değişkenle yapabileceğimiz yeni bir dize oluşturun Devre parçalarıHangi eylemleri yapabilirsiniz.

NewStrocatch \u003d Watch zinciri. Eklemek ();

Sekmenin oluşturulan sekmesini doldurun. Sorgu sonuç dizisinden veri parçaları prosedürü kullanarak Küresel bağlamDoldurarak (<Приемник>, <Источник>) .

Doldurma (Newstock, Elementural sonuçları);

Ancak bizim tarafımızdan tamamlanan veriler yeterli değil, böylece belge yapılacak, daha fazla doldurmalısınız muhasebe Hesapları Adlandırma. Bunu yapmak için, ihracat kullanıyoruz

prosedür FillingSetetTings Yönetimleri Belge Nesne Modülünden Mal ve hizmetlerin gerçekleştirilmesi. Parametreyi kullanarak arayın Bir obje(Belirtilmelidir,

sadece ne diyebiliriz ihracat Belge nesnesinin modülünden prosedürler).

Nesne. İyileştirmeSetting (newstrokatch, isim verileri, gerçek);

Tablo bölümünün bu programlamasında 1C 8. Tamamlandı. İşlem kullanılabilir. İşlemin tam metni Başlatmak, öyle görünüyor:

Prosedür Başlatmak (Nesne, Namethe Adı \u003d Tanımsız, TabloPole \u003d Belirsiz) İhracat Watchboard \u003d Nesne [NameTagged]; FormAvaility / Access \u003d Seçenekler ("Form"); Şikayetin formsuzasyonu. Openmodally (); Eğer nezaret edilmemişse (DocumentPlease) daha sonra rapor etmek için ( "Seçilmiş Belge Makbuzu"); Geri ödeme; Bitti; Talep \u003d yeni istek; İstek. Kurulum parametresi ( "Documentampsion", Documentampsion); Request.Text \u003d "Seç | Adamitiovarovarovyovyovariovari.nanklatura, | Adamitiovarovarovyovyovyovari. Numarası, | Adamitetovarovyovyovyovarsa.stavankands, | Adamitovarovyovyovyovarsi.summa, | Adamitetovarovyovyovyovaryovas.Summands, | Adamitiovarovarovyovyovyovari.zena | | Belge. Dumstive değil tovarovyvug.thovarsa Admiretovarovasküler olarak. | Nerede | Promplementovarovarovyovyovyovars.link \u003d & documentampsions "; Sonuç \u003d sorgu. Dolgu (). Unload (); Watchchast.inter (); Her element için sonuçtan kaynaklanan sonuç, yeni bir çerçevenin döngüsü \u003d Clique listesi. Addly (); Doldurma (Newstock, Elementural sonuçları); Nesne. İyileştirmeSetting (newstrokatch, isim verileri, gerçek); Endcycle; Ekstrüdreler

Bir sonraki bölümde, tablo parçasını doldurmanın işlenmesini ve belgeye nasıl bağlanacağının işlenmesinin nasıl hata ayıklanacağı açıklanacaktır.

4. hata ayıklama

Yazdığınız kodu hata ayıklamak için oldukça sık. Tablo bölümünü doldurmanın işlenmesini hata ayıklamak için 1C 8. Sahne oluştur Bağlantı nesnesi Tip Belge Rulo.RealizationSerovyovserg.

Dolduracağımız hata ayıklama yaparken bir uygulama belgesi seçmek için gereklidir. Daha sonra, bir hata ayıklama şekli oluşturmanız ve orada oluşturulan gerekli olanı barındırmanız gerekir. Bağlantı nesnesiHata ayıklama formunu oluşturma süreci, makbuzun belgesinin seçimi şeklinin oluşturulmasından farklı değildir, bu nedenle bunun için detaylı olarak durmayacağız.

Form oluşturulduktan sonra, modülüne dönüyoruz. Otomatik olarak oluşturulan bir prosedür bulacağız Gelişmiş düğme. Bu prosedür düğmesine basıldığında yönetir Gerçekleştirmek. Prosedürden arayın Başlatmakİşleme modülündeki olan, parametrelerde belge nesnesini verecektir Mal ve hizmetlerin gerçekleştirilmesi(ki gereği alıyoruz Bağlantı nesnesi) ve başlık tablosu parçası olan dize (bizim durumumuzda) Ürün:% s).

Prosedür Doldurma düğmesi (düğme) Başlat (yansıtıcı nesneyi. Hazırlık nesnesi (), "mallar"); Ekstrüdreler

Şimdi, oluşturulan ana işlem şeklinin oluşturulması gereklidir. Bunu yapmak için, "İşleme Formu" alanında seçin.

Şimdi, prosedürün doğru yere bir kesme noktası koyabilirsiniz. Başlatmak veya prosedürler Gelişmiş düğme Hata Ayıklama Formları ve Hata Ayıklama Modunda Tablo Bölümünün İşlenmesini Çalıştırın 1C: İşletmeler.

5. Belgeye bağlayın

Dolum işlemesi yazıldıktan sonra ve hata ayıklandığında, yapılacağı belgeye bağlanmalıdır. Bunu yapmak için 1C 8. Modda şirketmenüde hareket Servis -\u003e Ek raporlar ve işleme -\u003e Masa bölümlerinin ek dış işleme Ve referans kitabının yeni bir öğesini ekleyin. Düğmeyi kullanma Harici dosyayı değiştirin Tablo'yı doldurmak için bizim tarafımızdan oluşturulan bir dosya ekleyin.

Butonu kullanarak, bunu yapmak için işlenmeyi doldurun. Seçim Bir belge seçin Mal ve hizmetlerin gerçekleştirilmesi

Ve dolgunun tablo parçası için tasarlandığını belirtin Ürün:% s.

düğmesine basın TAMAM MI Ve hepsinde, doldurma işlemi menüde mevcut olacak Doldurmak tabakalı Ürün:% s belge Mal ve hizmetlerin gerçekleştirilmesi. Bu örnek için kullanılan işlemeyi indirebilirsiniz.

Tablo parçaları 1C'de birçok nesnede bulunur:

  • Rehberlik
  • Belgeler
  • Raporlar ve İşlem
  • Hesap planları
  • Özelliklerin Özellikleri
  • Tür hesaplaması için planlar
  • İş Süreçleri ve Görevleri

Tablo parçaları, bir nesneye ait sınırsız sayıda yapılandırılmış bilgiyi saklamanızı sağlar.

Tablo parçalarıyla bazı çalışma tekniklerini düşünün.

Tablo bölümünün etrafında nasıl gidilir

Bir tablo parçasına tırmanmak için bir döngü kullanabilirsiniz. Her biri için

Devre değeri döngüsünden her satır için

Rapor (satır. Gerekli);

Endcycle;

Değişkendeki her yinelemede Hatbir sonraki tablo parçası satırı geçilir. Satır değerlerinin değerleri ifadeyle elde edilebilir. Dize. İstihdam.

Seçilen tablo parçaları satırlarını nasıl alınır ve atlar

Bilgileri tablodan görüntülemek için nesnenin bir kısmından oluşan form öğesidir. Masa alanı. Birden fazla satırı etkinleştirmek için, değeri tablo alanındaki ayarlamanız gerekir. Çoklu Onun özelliği Seçim modu.

Seçilen satırların bir listesini almak için aşağıdaki kod kullanılır:

Tahsis edilen dizeleri atlamak için döngü kullanın Her biri için:

Ayrılan Testler \u003d Elementforms. Nametablichnogopol. Tahsis edildi;

Vurgulanan döngüden her satır için

// içerik döngüsü

Endcycle;

Tablo bölümünün (tablo alanının) satırlarını programlı olarak nasıl vurgulanır ve seçimi kaldırma

Tablo alanının vurgulama hattını programlı olarak kaldırmak için:

Elementforms. Nametablichnogopol. Ayrı. Açık ();

Tablo alanının tüm satırlarını programlı olarak tahsis etmek için:

Devre değeri döngüsünden her akım için
Elementforms. Nametablichnogopol. Dağıtılmış. Ekle (akım);
Endcycle;

Tablo bölümünü temizlemek nasıl

Tebeşir. Açık ();

Geçerli Tablo Bölüm Hattı Nasıl Gidilir?

Geçerli satır, şu anda kullanıcının imleç olduğu bir süredir. Bunu elde etmek için, tablo ile ilişkili olan formdaki kontrol unsuruna başvurmanız gerekir.

Geleneksel formlar için kod şöyle görünecektir:

Elementforms. Nametablichnogopol. Sıvı;

Yönetilen formlar için:

Elementler. Nametablichnogopol. Sıvı;

Tablo bölümüne yeni bir dize nasıl eklenir

Tablo bölümünün sonuna yeni bir dize ekleme:

Newstock \u003d meydan okuma. Ekle ();

Herhangi bir tablo parçası yerine yeni bir satır eklemek (sonraki çizgiler değiştirilecektir):

Newstock \u003d meydan okuma. Eklemek (dizin)
// dizin - eklenen satırın sayısı. Satır numaralandırma sıfırdan başlar.

Yeni hat. Requisite1 \u003d "değer";

Tablo bölümünün ayrıntılarını programlı olarak nasıl doldurur?

Tablonun tablo bölümünün ayrıntılarını programlı olarak doldurmanız gerekirse, kullanıcının eklenmesi, tablo bölümünün olay işleyicisini kullanmanız gerekir. Kurum.

İşleyicinin oluşturduğu prosedür üç parametreye sahiptir:

  • Eleman - Kontroller içerir Masaüstü.
  • Yeni hat- Boolevo. Değer içerir DoğruEklenirse yeni hat tablo kısmı ve Yanlış,kullanıcı zaten düzenlemeye başladıysa mevcut dize.
  • Kopya - Boolevo. Değer içerir DoğruKullanıcı dizeyi kopyalarsa ve Yanlış diğer durumlarda.

Bir örnek düşünün. Diyelim ki sahne tabular bölümünü doldurmamız gerekiyor KontrolYeni bir satır eklendiğinde durumunda. Mevcut bir dizgeyi düzenlerken, hesap hesabını değiştirmenize gerek yoktur.

Zaman çizelgesi işleminin prosedürü (eleman, yeni akış, kopyalama)

// Kullanıcı mevcut bir dizgeyi düzenlerse, hiçbir şey yapmayın.
Eğer yeni değilse
Dönüş;
Bitti;

// Dize yeni ise, hesabın hesabını ayarlayın.
Metin \u003d öğe. Sıvı; // tablo bölümünün mevcut satırını aldı
Trektroke. Muhasebe \u003d planlar. Hoshorty. Gerekli;
Ekstrüdreler