1с табличный документ закрыть
Добрый день, есть форма основная и форма подчинённая и макет, на основной форме присутствует кнопка и поле табличного документа, по нажатию на кнопку происходит переброс на подчинённую форму, на которой есть 3 реквизита и кнопка, я не совсем понимаю, какими командами реализовать добавление с реквизитов ввода в ТД, что после произвести сложение по одной колонке в подвал и добавить это в поле ТД на основную форму
этот код находится на подчинённой форме:
(20) Не надо их тебе передавать в табличный документ. Тебе их надо передать обратно на первую форму. И уже первая форма с этими данными управляется - добавляет в таблицу значений и переформировывает табличный документ на основе таблицы значений.
1. Почитай метод Закрыть() у управляемой формы. (Это для второй формы)
2. Почитай метод ОткрытьФорму() в части Оповещения - (это для первой формы).
(33) Ну и как вы это себе представляете, что код второй формы должен видет ваш табличный документ с первой формы.
Я для кого разжевываю тут все - вы дожны со второй формы передать в первую введенные данные. ТОЧКА. Не надо пытаться лечить насморк через задницу, извините.
Пишу в последний раз:
1. Во второй форме вводятся только новые данные, и возвращаются в первую форму.
2. Первая форма принимает новые данные и кладет их в таблицу значений (накапливает данные в строках).
3. Первая форма формирует табличный документ на основании накопленной таблицы значений.
(2)по нажатию на кнопку в основной форме, открывается подчинённая форма, далее с неё нужно ввести данные в реквизиты (поля ввода) добавить данные в ТД, в подвал вывести сложенную информацию по 3й колонке в "Строка" и чтобы эти данные вывелись на основной форме в поле табличного документа
Я правильно понимаю, что в данной тд, будут в "Строка" - <Фио>вписываться данные с реквизита(Поле ввода) ФИО?
Фио>(5)хотела циклы для каждого создать просто, то-есть цикл правильный, просто нужно изменить уже именно ОбластьСтрока.Параметры.Заполнить(Эл.Значение);?
(6) Нет, цикл неправильный хотя бы ровно потому, что он не нужен.
Нет, ваш код тоже не сработает. Заполнение работает по ключам. Если есть в области параметр с ключом" ФИО и в структуре элемент с ключом "ФИО" - то они заполнятся. А вы передаете в заполнение не связку "ФИО - Иванов", а просто "Иванов". Каким образом система должна понять, что "Иванова" надо подставить в параметр "ФИО", а не в параметр "Должность"? Для системы это просто набор букв.
(8)Спасибо, сейчас переделаю, 2 формы, потому что по условиям, нужно создать обработку, которая по кнопке будет открывать форму для ввода сотрудника и при нажатии на кнопку будет переносить информацию в поле табличного документа
(10) Это абсурд. Переносить надо в табличное поле формы (или в реквизит формы типа таблицы значений не отображаемую на форме). А не в поле табличного документа. А вот уже потом на основании этой таблицы формировать табличный документ.
Такой вопрос, нужно из Заголовка строка, получить данные из колонки Оклад(Число) и после в итог суммировать, не совсем понимаю, откуда что берётся вообще, сделать через цикл, так же перебором, а какие данные брать
(7) Вы изначально неправильно делаете задачу. У вас отчет - табличного вида, с итогами, значит и исходный материал для этого отчета должен быть в табличном виде. А не в виде струкутры с мифическими реквизитами формы.
Зачем вам вообще две формы. Заполняйте на основной форме таблицу значений, а по кнопке формируйте печатный документ через макет.
(9)Хорошо, допустим у меня есть код, который по нажатию кнопки будет добавлять и считать нужны значения, но как эти данные теперь с 2й формы перенести в поле табличного документа 1й формы?
(12) НУ НЕТ ЖЕ! У вас уже должна быть таблица значений заполненная к моменту формирования табличного документа, не надо её заново заполнять. Надо брать готовые строки из уже существующей и выводить в табличный документ!
Вот вы внимательно почитайте свой код. Сколько строк у вас будет в таблице на момент начала цикла?
И второе - почитайте внимательно методы, которые есть у таблицы значений, прежде чем пытаться сформировать итоговый оклад в цикле.
Поймите - это РАЗНЫЕ процессы:
1. Заполнение исходной таблицы.
2. Вывод исходной таблицы в отчет.
(13)Если я правильно понимаю, то я могу просто взять готовый макет и просто с ним производить манипуляции, а после вывести уже данные в поле табличного документа?
Каким методом мне вообще передавать данные на это поле табличного документа с 2й формы на 1ю форму? я вот этого в большей части не понимаю, код я перепишу, нужно просто понимание, как мне перенести то эти данные
(14) Макет не хранит данные, и не предназначен для манипуляций. Макет является шаблоном для формирования печатной формы, не более того. ничего в нем накапливать не надо.
А чего вы решили, что вам надо именно переносить строки в табличный документ? Может стоит посмотреть задачу по другому: при каждом добавлении строки - ЗАНОВО формировать табличный докуемнт по всем накопленным данным?
(15)Нужно именно: открывать форму для ввода сотрудника и при нажатии на клавишу переносить информацию в поле табличного документа. то-есть если повторять действия, то можно будет добавить 3,4,5. 10го сотрудника и после у подвале увидеть Итоговый оклад всех сотрудников
(16) Убейте автора задачи. Или приведите полностью её текст. Вряд ли там есть слова "программно переносить данные прямо в табличный документ". Скорее всего там есть слова типа "отображать вновь введенную информацию в табличном документе".
(17)Вот весь текст задачи:
Создать обработку, которая по кнопке будет открывать форму для ввода сотрудника и при нажатии на клавишу переносить информацию в поле табличного документа.
Так же должна выводиться строка итогов после последней записи.
(18) Ясно. Ни то ни се. Кароч, я бы сделал через таблицу значений, в которой накапливается информация и каждый раз обновляется табличный документ полностью.
Иначе придется считать итог перебирая ячейки самого табличного документа - таким извращением даже в теоретических целях заниматься не следует.
(19)Табличный документ, который я код выше вставила, там место будет только для одного сотрудника, допустим она правильная, я заполняю данные, но как я передаю их то в 1ю форму в поле табличного документа, вот тут у меня понимания нет никакого
(20) Не надо их тебе передавать в табличный документ. Тебе их надо передать обратно на первую форму. И уже первая форма с этими данными управляется - добавляет в таблицу значений и переформировывает табличный документ на основе таблицы значений.
1. Почитай метод Закрыть() у управляемой формы. (Это для второй формы)
2. Почитай метод ОткрытьФорму() в части Оповещения - (это для первой формы).
(21)Я правильно понимаю, что при выводе я указываю поле табличного документа с первой формы? Сотрудники - Реквизит который находится на форме (поле табличного документа), потому что у меня выдаёт ошибку 1С, что переменная не определена
(23) По-моему вам надо разобраться - что такое табличный документ и что такое поле табличного документа, что такое таблица значение и табличное поле.
А что такое Сотрудники в вашем коде? Это реквизит формы с типом "Табличный документ"? Или элемент формы типа "Табличное поле" на форме?
(25) Ээээ нет. Реквизит на форму не может быть выведен. НА форму выведен Элемент формы, который связан с реквизитом через свойство "ПутьКДанным". Любому элементу можно программно изменить привязку к любому другому подходящему реквизиту.
Есть Элемент, и есть Реквизит. У них могут как совпадать имена, так и различаться. И обращение к ним идет через разные контексты. К реквизитам - напрямик или через ЭтаФорма или ЭтотОбъект (ИмяРеквизита, ЭтаФорма.ИмяРеквизита, ЭтотОбъект.ИмяРеквизита), к элементам - через коллекцию Элементы (Элементы.ИмяЭлемента).
Так как у вас называется реквизит табличного документа? На какую переменную ругается код?
(27)У меня 1С ругается на переменную Сотрудники, которую я вписываю на 2й форме, а находится он на 1 форме, как ТД, и он у меня добавлен на саму форму, я вот просто сейчас не понимаю, что мне нужно сделать, чтобы 2 форма видела мой реквизит с 1 формы и она уже выводила мне готовую ТД в поле, с расчетами, я просто так вывести опять не смогу?
(29) Давайте скриншоты реквизитов уже. Спорю на бутылку коньяка, что у вас в реквизитах первой формы нет реквизита с именем Сотрудники.
(31) Это в первой форме или во второй? И где исполняется код, который выдает ошибку - в первой форме или во второй?
(32)Это скриншот первой формы, а код который исполняется с реквизитами ФИО,Должность и Оклад находится во второй форме, там и выдаётся ошибка, а если быть конкретнее, то Переменная не определена(Сотрудники)
(33) Ну и как вы это себе представляете, что код второй формы должен видет ваш табличный документ с первой формы.
Я для кого разжевываю тут все - вы дожны со второй формы передать в первую введенные данные. ТОЧКА. Не надо пытаться лечить насморк через задницу, извините.
Пишу в последний раз:
1. Во второй форме вводятся только новые данные, и возвращаются в первую форму.
2. Первая форма принимает новые данные и кладет их в таблицу значений (накапливает данные в строках).
3. Первая форма формирует табличный документ на основании накопленной таблицы значений.
Табличный документ в 1С 8.3 - это объект встроенного языка, который используется для создания печатных форм документов и отчетов. Является электронной таблицей, так как состоит из строк и столбцов и имеет функциональность, определенную следующими методами: ввод данных, группировка элементов, расшифровка, примечание в ячейках, оформление ячеек, форматирование, сохранение. Табличный документ использоваться как сам по себе, и может входить в состав любой из форм и служит для отображения информации.
✔ Создание печатной формы из табличного документа
&НаКлиенте
Процедура СозданиеПечатнойФормыИзТабличногоДокумента ( Команда )
НастройкаКолонтитуловПечатнойФормы ( ФормаПечати );
НастройкаПараметровПечатиТабличногоДокумента ( ФормаПечати );
ФормаПечати . Показать ( "Отчет по долгам" );
// Сохранение "Отчета по долгам"
ФормаПечати . Записать ( "D:\Storage\data\ОтчетПоДолгам.xls" , ТипФайлаТабличногоДокумента . XLS );
// Печать "Отчета по долгам" сразу на принтер
ФормаПечати . Напечатать ( РежимИспользованияДиалогаПечати . НеИспользовать );
&НаСервере
Функция СозданиеПечатнойФормыИзТабличногоДокументаНаСервере ()
Макет = ЭтотОбъект . ПолучитьМакет ( "Макет_Табл" );
// Изменение табличного макета после его создания.
ПрограммноеИзменениеТабличногоДокумента ( Макет );
ФормаПечати = Новый ТабличныйДокумент ;
// Получение области и макета по имени
Шапка = Макет . ПолучитьОбласть ( "Шапка" );
// Заполнение параметров
Шапка . Параметры . Дата = ТекущаяДата ();
Шапка . Параметры . Номер = 2020 ;
// Вывод шапки в документ
ФормаПечати . Вывести ( Шапка );
// Заголовок табличной части.
ЗаголовокТ = Макет . ПолучитьОбласть ( "ТЧ_Заголовок" );
ФормаПечати . Вывести ( ЗаголовокТ );
ТЧ_Строка = Макет . ПолучитьОбласть ( "ТЧ_Строка" );
SSDIntelOptaneDC = Справочники . Номенклатура . НайтиПоНаименованию ( "SSD Intel Optane DC P4800X 1.5TB" );
// Группировка строк таблицы в сворачивающийся блок
ФормаПечати . НачатьГруппуСтрок ( "Номенклатура" , Истина);
Для Х = 1 По 100 Цикл
ТЧ_Строка . Параметры . Номенклатура = SSDIntelOptaneDC ;
ТЧ_Строка . Параметры . Количество = Х ;
// Параметр расшифровки "РасшифровкаНоменклатуры" - для открытия формы номенклатуры из макета по клику
ТЧ_Строка . Параметры . РасшифровкаНоменклатуры = SSDIntelOptaneDC ;
ФормаПечати . Вывести ( ТЧ_Строка );
КонецЦикла;
Табличный документ | Версия | |
---|---|---|
Автоматическая установка ширины колонки табличного документа. | [7.x, 8.x] | |
Вывести табличный документ в PDF | [8.x] | |
Вывод картинки (изображения) на печать, в макет (табличный документ) | [7.x, 8.x] | |
Вывод колонтитулов программно ВерхнийКолонтитул, НижнийКолонтитул | [8.x] | |
Вывод результата запроса в табличный документ | [8.x] | |
Выгрузка табличного документа в Google таблицу | [8.x] | |
Группировка строк в табличном документе | [8.x] | |
Загрузка данных в документ из табличного документа (в ТД скопировано из Excel) | [8.x] | |
Загрузка данных из файла табличного документа в управляемом приложении | [8.2 УП, 8.3] | |
Как в отобразить картинку в табличной части | [8.x] | |
Как в табличном документе изменить значение определенной ячейки? | [8.x] | |
Как вставить Разделитель страниц или Новую страницу? | [7.x, 8.x, 8.2 УП] | |
Как выгрузить табличный документ в excel | [8.x] | |
Как закрепить, фиксировать область выводимого табличного документа? | [7.x, 8.x] | |
Как изменить шрифт в ячейке Табличного Документа? | [8.x] | |
Как отсечь ненужные пробелы из выборки запроса при заполнении параметров макета | [8.x] | |
Как очистить табличный документ? | [8.x] | |
Как преобразовать MXL файл в Таблицу Значений? | [8.x, 8.2 УП, 8.3] | |
Как при выводе данных в Табличный Документ изменить Текст и Цвет Текста конкретной ячейки? | [7.x, 8.x] | |
Как при выводе данных в табличный документ свернуть выводимые группировки? | [8.x] | |
Как при печати выводить шапку на каждой странице (ПовторятьПриПечатиСтроки)? | [8.x, 8.2 УП, 8.3] | |
Как программно изменить текст, цвет, фон ячейки или области табличного документа? | [8.x, 8.2 УП, 8.3] | |
Как сделать Расшифровку в табличном документе | [8.x, 8.2 УП, 8.3] | |
Как сделать чтобы при выделении числе в табличном документе, отчете выводилась их сумма? | [8.x, 8.2 УП] | |
Как сделать чтобы при редактировании в ячейке появлялся калькулятор? | [8.x, 8.2 УП] | |
Как сжать ширину колонок табличного поля | [8.x] | |
Как сформировать, вывести на печать таблицу, табличный документ | [7.x, 8.x] | |
Как табличный документ заполнить на сервере и открыть на клиенте? | [8.2 УП] | |
Как убрать, очистить выделение в табличном документе и переместить курсор в R1C1? | [8.x] | |
Как установить значение в Ячейку Табличного Документа | [8.x, 8.2 УП] | |
Кнопки управления уровнями группировки (генерировать программно) | [8.x, 8.2 УП] | |
Корректировка документа | [8.3] | |
Сводные таблицы | [8.x, 8.2 УП] | |
Создание сводной таблицы | [8.x] | |
Табличный документ: Колонтитулы и параметры страницы | [8.x] | |
Функции преобразуют табличный документ (ТД) в строку и обратно | [8.x] | |
Функция загружает весь табличный документ в таблицу значений | [8.x] | |
Шаблон кода для вывода данных в табличный документ | [8.x, 8.2 УП, 8.3] |
Табличный документ | Версия | |
---|---|---|
Автоматическая установка ширины колонки табличного документа. | [7.x, 8.x] | |
Вывести табличный документ в PDF | [8.x] | |
Вывод картинки (изображения) на печать, в макет (табличный документ) | [7.x, 8.x] | |
Вывод колонтитулов программно ВерхнийКолонтитул, НижнийКолонтитул | [8.x] | |
Вывод результата запроса в табличный документ | [8.x] | |
Выгрузка табличного документа в Google таблицу | [8.x] | |
Группировка строк в табличном документе | [8.x] | |
Загрузка данных в документ из табличного документа (в ТД скопировано из Excel) | [8.x] | |
Как в отобразить картинку в табличной части | [8.x] | |
Как в табличном документе изменить значение определенной ячейки? | [8.x] | |
Как вставить Разделитель страниц или Новую страницу? | [7.x, 8.x, 8.2 УП] | |
Как выгрузить табличный документ в excel | [8.x] | |
Как закрепить, фиксировать область выводимого табличного документа? | [7.x, 8.x] | |
Как изменить шрифт в ячейке Табличного Документа? | [8.x] | |
Как отсечь ненужные пробелы из выборки запроса при заполнении параметров макета | [8.x] | |
Как очистить табличный документ? | [8.x] | |
Как преобразовать MXL файл в Таблицу Значений? | [8.x, 8.2 УП, 8.3] | |
Как при выводе данных в Табличный Документ изменить Текст и Цвет Текста конкретной ячейки? | [7.x, 8.x] | |
Как при выводе данных в табличный документ свернуть выводимые группировки? | [8.x] | |
Как при печати выводить шапку на каждой странице (ПовторятьПриПечатиСтроки)? | [8.x, 8.2 УП, 8.3] | |
Как программно изменить текст, цвет, фон ячейки или области табличного документа? | [8.x, 8.2 УП, 8.3] | |
Как сделать Расшифровку в табличном документе | [8.x, 8.2 УП, 8.3] | |
Как сделать чтобы при выделении числе в табличном документе, отчете выводилась их сумма? | [8.x, 8.2 УП] | |
Как сделать чтобы при редактировании в ячейке появлялся калькулятор? | [8.x, 8.2 УП] | |
Как сжать ширину колонок табличного поля | [8.x] | |
Как сформировать, вывести на печать таблицу, табличный документ | [7.x, 8.x] | |
Как убрать, очистить выделение в табличном документе и переместить курсор в R1C1? | [8.x] | |
Как установить значение в Ячейку Табличного Документа | [8.x, 8.2 УП] | |
Кнопки управления уровнями группировки (генерировать программно) | [8.x, 8.2 УП] | |
Сводные таблицы | [8.x, 8.2 УП] | |
Создание сводной таблицы | [8.x] | |
Табличный документ: Колонтитулы и параметры страницы | [8.x] | |
Функции преобразуют табличный документ (ТД) в строку и обратно | [8.x] | |
Функция загружает весь табличный документ в таблицу значений | [8.x] | |
Шаблон кода для вывода данных в табличный документ | [8.x, 8.2 УП, 8.3] |
Как заполнить табличную часть формы программно? 8
Нужно по кнопке Заполнить - сформировать данные для заполнения табличных частей и заполнить их. Форма имеет вид: Рядом с кнопкой Записать и закрыть добавлена кнопка Заполнить документ , код ее команды: // Код заполнения ТЧ НаСервере П 17 правил для составления оптимального ЗАПРОСа к данным базы 1С 44
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получ 1C и Google Maps 21
была поставлена задача отображения на географической карте медицинских учреждений. После обзора предлагаемых решений был выбран сервис google. Но так же подобного рода подход будет работать и с картами сервиса yandex. Во время решения задачи было реш 1С 8.x : Как убрать лидирующие нули в номере Документа (вариант2) 0
Скопировать строку с номером, с лидирующими нулями, в числовом поле (с форматом без групп, без группировки), и вернуть(скопировать) обратно в строковом поле с номером. Возвращает без нулей. COM-подключение к базе 7.7 из 8.2 1С 6
Если код выполняется на стороне клиента, то необходимо наличие базы 7.7 на локальной машине. Пример (На форме объекта присутствует реквизит Таблица(ТаблицаЗначений)): НаКлиенте Процедура Загрузки() ПутьКБазе=" D: ВашаБаза 1с77 " ; Пользователь= Посмотреть все результаты поиска похожих
Еще в этой же категории
Вывод картинки (изображения) на печать, в макет (табличный документ) 32
// 1-й вариант //Как вывести картинку в табличный документ? ТабДок = Новый ТабличныйДокумент; Макет = ОбработкаОбъект.ПолучитьМакет(" Макет" ); ОбластьКартинки = Макет.ПолучитьОбласть(" ОбластьСКартинкой" ); Картинка = Новый Картинка(ПутьККа Вывести табличный документ в PDF 18
Данный пример работает на платформе выше 8.2.13 Макет = ПолучитьМакет(" Макет" ); ОбластьШапка = Макет.ПолучитьОбласть(" Шапка" ); ТабДок = Новый ТабличныйДокумент; ОбластьШапка.Параметры.НомерДок = Номер; ОбластьШапка.Параметры.ДатаДок = Как программно изменить текст, цвет, фон ячейки или области табличного документа? 7
Ниже приведено несколько полезных шаблонов кода по работе с табличным документом: //Пример получения текста ячейки ПолеТабДок = ЭлементыФормы.тдПолеТабличногоДокумента; ПолеТабДок.Область("R1C2").Текст = спрНоменклатура.Наименование; ПолеТабДок Как в отобразить картинку в табличной части 7
В табличной части есть документы заявки от покупателя, нам нужно добавить картинку для отображения статуса документов заявка - проведен , не проведен, помечен на удаление. //Отобразим картинку Процедура СписокПриВыводеСтроки(Элемент, Оформление Вывод колонтитулов программно ВерхнийКолонтитул, НижнийКолонтитул 6
Колонтитул является специальным текстом, выводимым вверху или внизу каждой страницы при выводе документа на печать. В тексте колонтитула можно использовать следующие управляющие конструкции: > ( >) - при печати в данном месте будет выведен номер ст Посмотреть все в категории Табличный документ
Читайте также: