Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 23:34

Взаимодействие основного документа с произвольной формой.

Автор Pavel-67, 05 июн 2014, 11:23

0 Пользователей и 2 гостей просматривают эту тему.

Pavel-67

Цитата: has от 05 июн 2014, 14:02
Цитата: Pavel-67 от 05 июн 2014, 13:56Она открывает новую форму с удаленными значениями , при этом старая остается
Не понял, можно подробнее? Ну и код какой, может ошибка есть какая

При выполнении кода происходит повторное открытие документа, в итоге у меня открыт счет дважды в одном есть изменения в другом нет ))

has


Pavel-67

Цитата: has от 05 июн 2014, 14:16
Код то какой?
так ведут себя все 3. Последний

КоличествоСтрок = Идентификатор.Услуги.Количество()-1;
ОбъектДокумента = Идентификатор.ПолучитьОбъект();
Сообщить(Идентификатор.Услуги.Количество());   


Для к=0 По КоличествоСтрок Цикл
   //Если ОбъектДокумента.Услуги[КоличествоСтрок-к].Количество = 0 Тогда
      ОбъектДокумента.Услуги.Удалить(КоличествоСтрок-к);
      Сообщить(Идентификатор.Услуги.Количество());
  // КонецЕсли;
КонецЦикла;


   ОбъектДокумента.Записать();
   
ОткрытьЗначение(ОбъектДокумента);

has

Не знаю почему я сразу не спросил, а что Вы хотите от этого кода? Цель какая?

Pavel-67

Цитата: has от 05 июн 2014, 14:23
Не знаю почему я сразу не спросил, а что Вы хотите от этого кода? Цель какая?

при выполнении этого кода должны удалиться все данные с ТЧ в Счете при этом и счет и моя произвольная форма должна остаться. На данный момент все работает как я хотел с одним минусом мне необходимо, что бы данные в счете обновились не переоткрывая счет.

has

Чтобы очистить табличную часть, у нее есть метож Очистить(). Очищаете, записываете документ и все. Данные в документе будут новые, просто чтобы проверить в него зайти надо

Pavel-67

Цитата: has от 05 июн 2014, 14:42
Чтобы очистить табличную часть, у нее есть метож Очистить(). Очищаете, записываете документ и все. Данные в документе будут новые, просто чтобы проверить в него зайти надо

В данном случае большой разницы нет, добавлять данные, удалять или очистить. Необходимо после записи данных обновить данные в первоначальном документе (без его закрытия и вновь открытия).
Я пытался воссоздать принцип подбора номенклатуры в счете. Там по нажатию кнопки происходит открытие новой формы и при выборе номенклатуры происходили изменения в счете (добавлялись товары/услуги). По этому принципу я и хотел сделать.

has

Там передается владелец форме, а при нажатии выполняется процедура ОповеститьОВыборе(). Затем в документе вызывается процедура ОбработкаВыбора(), которая и добавляет выбранную номенклатуру. Посмотрите код и поймете

Pavel-67

Цитата: has от 05 июн 2014, 14:57
Там передается владелец форме, а при нажатии выполняется процедура ОповеститьОВыборе(). Затем в документе вызывается процедура ОбработкаВыбора(), которая и добавляет выбранную номенклатуру. Посмотрите код и поймете


Ладно, спасибо за разъяснение, буду читать.В 1С код имеет свою логику исполнения, в делфи понятней )

Теги: <i> 

Похожие темы (5)

Рейтинг@Mail.ru

Поиск