Имя: Пароль:
1C
 
Как отменить ввод пустых строк
0 Васька трахтенберг
 
01.02.05
19:17
Это процедура в документе
Хоть возврат и срабатывает новая строка с пустыми значениями вводится все равно. Как сделать что бы пустая строка не вводилась?

Процедура ПоступлениеТМЦПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования)
   Если Элемент.ТекущиеДанные.Номенклатура.Пустая() = Истина Тогда
       Сообщить("Пустая");
       ОтменаРедактирования = Истина;        
       НоваяСтрока          = Ложь;
       Отказ                = Истина;
       Возврат;
   КонецЕсли;
1 Rovan
 
гуру
02.02.05
08:56
(0) У тебя какой-то венегрет, попробуй проще -
Процедура ПоступлениеТМЦПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования)
  Если Элемент.ТекущиеДанные.Номенклатура.Пустая() Тогда
      Сообщить("Пустая ссылка запрещена");
      ОтменаРедактирования = Истина;        
  КонецЕсли;
КонецПроцедуры
2 vi0
 
02.02.05
11:11
Процедура ПоступлениеТМЦПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования)
   Если ОтменаРедактирования Тогда
       возврат;
   КонецЕсли;

  Если Элемент.ТекущиеДанные.Номенклатура.Пустая() Тогда
      Сообщить("Пустая");
      Отказ = Истина;
  КонецЕсли;
КонецПроцедуры


Присваивать какие-то значения параметрам ОтменаРедактирования, НоваяСтрока смысла нет
3 vi0
 
02.02.05
11:13
поправочка:
Процедура ПоступлениеТМЦПередОкончаниемРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования, Отказ)
4 Rovan
 
гуру
02.02.05
11:37
Вообщето да лучше через ПередОкончаниемРедактирования(...) и Отказ = Истина.
5 Васька раздолбаська
 
02.02.05
14:01
Все это не работает всяко пробовал из того что выше написано, но пустые строки в документе все равно вводятся!!!
Даже если так:
Процедура ПоступлениеТМЦПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования, Отказ)
   Отказ = Истина;
   Возврат;    
КонецПроцедуры
Строки вводяться как сделать что бы они не водились?
6 Помогите Ваське
 
02.02.05
14:46
кто нибудь!
7 vi0
 
02.02.05
15:36
это слишком просто
отобрази список событий табличого поля и посмотри внимательно
8 Васька forever
 
02.02.05
16:02
Процедура ПоступлениеТМЦПередОкончаниемРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования, Отказ)
   Если Элемент.ТекущиеДанные.Номенклатура.Пустая() Тогда
       Отказ = Истина;
   КонецЕсли;
КонецПроцедуры
9 Слепой Васька
 
02.02.05
16:10
Не заметил в [3] Перед а не при ::)
10 vi0
 
03.02.05
03:41
не забудь:
  Если ОтменаРедактирования Тогда
      возврат;
  КонецЕсли;
11 Евгений
 
03.02.05
11:00
(5) Истину глаголишь. Когда нажимается кнопочка <ins> в таблицу добавляется строка с пустым занчением (которое тебе не нтавится), а дальше пользователь ее начинает редактировать. После окончания редактирования ты пытаешься отменить редактирование, но про отмену ввода строки никто ничего не говорит - это две разные операции. От ввода строки пожно отказаться только в "ПриДобавленииСтроки", но тебя это не устроит.
мораль: либо при вводе строки сразу же загонять не пустое значение номенклатуры и проверять то, что юзверь его обнулил, либо после редактирования проверять на пустоту и, если номенклатура пустая, удалять ее. Или запрещать сохранение документа (или что у тебя там), проверяя табличную часть перед записью.