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

Удалить строку из табличной части

Автор AlenkaInt, 08 июн 2013, 15:29

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

AlenkaInt

Здравствуйте. Есть учебное задание - в модуле объекта "Поступления товаров" создайте экспортный метод "Очистить строки с незаполненной ценой". Данный метод должен из табличной части документа удалять строки с реквизитом "Цена" равным нулю. Создайте команду формы, выведите ее в качестве кнопки командной панели. При исполнении команды обеспечьте вызов метода модуля объекта "Очистить незаполненной ценой".

В модуле формы такой код -

&НаКлиенте
Процедура ОчиститьСтрокиСНезаполненнойЦеной(Команда)
ПромежуточнаяСервер();
КонецПроцедуры
&НаСервере
Процедура ПромежуточнаяСервер()
Реквизит=РеквизитФормыВЗначение("Объект");
Реквизит.ОчиститьСтрокиСНезаполненнойЦенойСервер();

КонецПроцедуры

В модуле объекта документа Поступелние товаров
Процедура ОчиститьСтрокиСНезаполненнойЦенойСервер() Экспорт
ПараметрОтбора=Новый Структура("Цена",0);
Массив = Товары.НайтиСтроки(ПараметрОтбора);
  Для Каждого Элемент Из Массив Цикл
  Товары.Удалить(Элемент);
КонецЦикла;
КонецПроцедуры

Почему то все равно не удаляется строка..

Продскажите почему .

AlenkaInt

Изменила немного код
Процедура ОчиститьСтрокиСНезаполненнойЦенойСервер() Экспорт   
   ПараметрОтбора=Новый Структура("Цена",0);
   Массив = Товары.НайтиСтроки(ПараметрОтбора);
   Для Каждого Строка Из Массив Цикл
      Индекс = 1;
      Товары.Удалить(Индекс);
      Индекс = Индекс + 1;
   КонецЦикла;   
КонецПроцедуры
Теперь строка удаляется, но не удобно. Я нажимаю на кнопку, ничего не происходит, потом закрываю документ. Если я соглашаюсь на сохранение изменений, то выдается сообщение, что документ уже изменен другим пользователем. А если просто закрываю без сохранений и открываю, то строк с нулевой ценой нет.
Как сделать, чтобы удаление строк отбражалось сразу?
Добавлено: 08 июн 2013, 16:42


Сама разобралась.
Надо было добавить в Процедуру ОчиститьСтрокиСНезаполненнойЦеной(Команда) строку - ЭтаФорма.Прочитать();

Dethmontt

Это собеседование что ли? Вы все в одно место устраиваетесь?
Очистить строки с незаполненной ценой
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

GRADUS

Цитата: AlenkaInt от 08 июн 2013, 16:26
Сама разобралась.
Надо было добавить в Процедуру ОчиститьСтрокиСНезаполненнойЦеной(Команда) строку - ЭтаФорма.Прочитать();

На самом деле надо было обратно значение в реквизит формы запилить.

AlenkaInt

Нет, не собеседование. Это домашнее задание к видео-курсу.

GRADUS

Никогда не понимал, чему могут научить видео курсы?

Для меня учебой являются реальные задания, а после их получения они "шлифуются" книгами и запоминаются.

Толку то, что ты под копирку что то сделаешь...

AlenkaInt

Одни видеокурсы ничему. Это факт. Я начинала со скаченных из инета курсов, но без домашних заданий. Никакого толка. Потом я купила такой же курс, но с мастер-группой, с отработкой домашних заданий. Это уже было кое что. Потом я устроилась стажером. И параллельно продолжала обучаться. Вот это уже было кое что :-) Мое мнение на этот счет такое, что просто работать и читать книги или просто курсы это полу-мера. Идеально работать и учиться, лучше очно. На этих курсах мне нравится то, что там показывают много всяких фишек, которые существенно упрощают работу, потому что какие то моменты я сама методом проб и ошибок освоила, но можно гораздо быстрее, ну и какая то в голове система появляется, что показывают новые возможности, многие по старинке делают, не знают, что уже появился какой то механизм для упрощения работы. И еще, если что то не получается, то всегда можно задать вопрос. Если вопрос интересный или многие какой то момент не поняли, то снимают отдельное видео.

Теги:

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

Рейтинг@Mail.ru

Поиск