1C: podnik je oblíbenou platformou pro automatizaci obchodních procesů. Jednou z důležitých součástí je tabulková část-je to sada řádků s určitými poli, která mohou být spojena s hlavním dokumentem nebo registrem. Jak vytisknout tyto řádky do tisku nebo zpráv je důležité, aby každý vývojář nebo uživatel programu věděl.
Nejprve je nutné přejít na požadovanou tabulkovou část v objektu obslužné rutiny nebo dokumentu. K tomu se používá metoda " Získatabylická část (Imatabilní část)", kde "Imatabilní část" je název správné tabulkové části.
- Získat() : umožňuje získat hodnotu zadaných údajů v aktuálním řádku;
- Nastavit (Hodnotu) : umožňuje nastavit hodnotu zadaných údajů v aktuálním řádku;
- Přidat() : přidá nový řádek do tabulkové části;
- Odstranit() : odstraní aktuální řádek z tabulkové části.
Chcete-li například vytisknout všechny řádky tabulkové části, můžete použít následující kód:
Для Каждого Строка Из Объект.ТабличнаяЧасть ЦиклСообщить(Строка.Получить());КонецЦикла;
Jednoduché pokyny a příklady
- Otevřít formulář nebo dokument obsahující tabulkovou část v režimu úprav.
- Zvýrazněte tabulkovou část, pro kterou je třeba odvodit řádky.
- Klikněte pravým tlačítkem myši na vybranou oblast a vyberte položku nabídky Vložit řádky.
- Vyplňte požadovaná pole v nových řádcích tabulkové části.
ТабличнаяЧасть = Документ.ТабличнаяЧасть;Для Каждого Строка Из ТабличнаяЧасть ЦиклСообщить(Строка.Поле1 + " " + Строка.Поле2);КонецЦикла;
| Pole 1 | Pole 2 | Pole 3 |
|---|---|---|
| Hodnota 1 | Hodnota 2 | Hodnota 3 |
| Hodnota 4 | Hodnota 5 | Hodnota 6 |
| Hodnota 7 | Hodnota 8 | Hodnota 9 |
- Určete proměnnou, kterou použijeme k přerušení řádků.
- Určete podmínku cyklu, například před dosažením počtu řádků v tabulkové části.
- V rámci cyklu přistupovat k hodnotám polí aktuálního řádku a odvodit je.
- Přírůstek proměnné pro přechod na další řádek.
Для Каждого Строка Из ТабличнаяЧасть ЦиклСообщить(Строка.Поле1 + " - " + Строка.Поле2 + " - " + Строка.Поле3);КонецЦикла;
Po provedení tohoto kódu budou vyvedeny hodnoty každého řádku tabulkové části, například:
Значение 1 - Значение 2 - Значение 3Значение 4 - Значение 5 - Значение 6Значение 7 - Значение 8 - Значение 9
Kroky a příklady
- Identifikujte objekt-odkaz na dokument, který obsahuje požadovanou tabulkovou část.
- Získejte přístup k tabulkové části prostřednictvím vlastnosti objektu-odkazu.
- Vyberte požadované řádky tabulkové části pomocí metody Vybratprvky ().
- Proveďte požadované akce s vybranými řádky (například vyveďte jejich hodnoty nebo je změňte).
- Uložte změny pomocí metody zapsat ().
// Получаем ссылку на документДокумент = Справочники.Документы.НовыйДокумент;// Получаем ссылку на табличную частьТабличнаяЧасть = Документ.ТабличнаяЧасть;// Выбираем нужные строкиВыбранныеСтроки = ТабличнаяЧасть.ВыбратьЭлементы();Для Каждого Строка Из ВыбранныеСтроки ЦиклСообщить(Строка.Значение);КонецЦикла;// Сохраняем измененияДокумент.Записать();
Nejprve je nutné získat přístup k tabulkové části. K tomu lze použít následující kód:
ТабличнаяЧасть = Документ.ТабличнаяЧасть;
Filtr pak můžete použít na tabulkovou část pomocí metody "Najdipoindex". Pokud například chcete odvodit pouze řádky, které mají hodnotu pole "číslo" větší než 10, můžete použít následující kód:
ТабличнаяЧасть.НайтиПоИндексу("Количество", ">10");
Po použití filtru můžete přepnout filtrované řádky a vygenerovat požadované hodnoty. Například následující kód umožňuje odvodit hodnotu pole "název" pro každý filtrovaný řádek:
Для Каждого Строка Из ТабличнаяЧасть ЦиклСообщить(Строка.Наименование);КонецЦикла;
Podrobný popis a příklady
Krok 1: Otevření tabulkové části:
ТабличнаяЧасть = Документ.СтрокиДокумента;
Krok 2: Přeřazení řádků tabulkové části:
Po otevření tabulkové části můžete procházet její řádky. K tomu lze použít cykly. Chcete-li například procházet všechny řádky tabulkové části a přenést je na obrazovku, můžete použít následující kód:
Для Каждого Строчка Из ТабличнаяЧасть ЦиклСообщить(Строчка.Наименование);КонецЦикла;
Для Каждого Строчка Из ТабличнаяЧасть ЦиклСообщить(Строчка.Получить("Наименование"));КонецЦикла;
Krok 4: Doplňková operace:
Для Каждого Строчка Из ТабличнаяЧасть ЦиклСтрочка.Установить("Количество", 10);КонецЦикла;
Tímto způsobem lze pomocí výše uvedených kroků snadno a jednoduše odvodit řádky tabulkové části do 1C.