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

При открытии документа ссылки на другие документы

Автор warshadow, 22 мар 2011, 15:55

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

warshadow

так допер ))

Если ТблПоступлОтиздат.Количество()=0 тогда
    Сообщить("Табличная часть пуста!");
    Отказ= Истина;
   КонецЕсли;


warshadow

При отладке увидел одну вещь, когда выдается таблица с перечислением, и если нажать кнопку Ок, не выбирая не одного из вариантов, он открывает всю форму.
И поповоду блокирование ТЧ-ей, до сих пор не могу как сделать, чтобы программа понимала, что на данный момент используется 1 ТЧ ,а не 2 ТЧ и наоборот, смотря выбор какой.

cska-fanat-kz

Тады в

Если Не ВвестиЗначение(ВидОперации,"Выберите вид операции",Новый ОписаниеТипов("ПеречислениеСсылка.ВидыОпераций")) Тогда
Отказ = ИСТИНА;
КонецЕсли;

после Отказ...
поставьте

Возврат;

Вы же надеюсь это в ПередОткрытием вставили?
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

cska-fanat-kz

А что вот это

Если ВидОперации = Перечисления.ВидыОпераций.ОтИздательства Тогда
ЭлементыФормы.ТЧ1.Видимость = ИСТИНА;
ЭлементыФормы.ТЧ2.Видимость = ЛОЖЬ;
ИначеЕсли ВидОперации = Перечисления.ВидыОпераций.ОтЧитателей Тогда
ЭлементыФормы.ТЧ2.Видимость = ИСТИНА;
ЭлементыФормы.ТЧ1.Видимость = ЛОЖЬ;
КонецЕсли;

не выполняется?
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

warshadow

Цитата: cska-fanat-kz от 23 мар 2011, 17:37
Вы же надеюсь это в ПередОткрытием вставили?
Да да конечно))) если куда-то в другое место, то не будет воспринимать ЭлементыФормы.

А что с блокировкой ТЧ-ей делать?
Цитата: cska-fanat-kz от 23 мар 2011, 17:37
А что вот это

Если ВидОперации = Перечисления.ВидыОпераций.ОтИздательства Тогда
ЭлементыФормы.ТЧ1.Видимость = ИСТИНА;
ЭлементыФормы.ТЧ2.Видимость = ЛОЖЬ;
ИначеЕсли ВидОперации = Перечисления.ВидыОпераций.ОтЧитателей Тогда
ЭлементыФормы.ТЧ2.Видимость = ИСТИНА;
ЭлементыФормы.ТЧ1.Видимость = ЛОЖЬ;
КонецЕсли;

не выполняется?
Выполняется!))

warshadow

Если Не ВвестиЗначение(ВидОперации,"Выберите вид операции",Новый ОписаниеТипов("ПеречислениеСсылка.ВидыОпераций")) Тогда
Отказ = ИСТИНА;
Возврат;
КонецЕсли;

Поставил, все равно , когда нажимаю добавить и вылазит табличка Вида Операций и нажимаю кнопку "Ок' ,не выбирая ничего, просто открывает документ, без этого условия:
Если ВидОперации = Перечисления.ВидыОпераций.ОтИздательства Тогда
ЭлементыФормы.ТЧ1.Видимость = ИСТИНА;
............

cska-fanat-kz

Ну перед Если ВидуОпераций что нить присвойте

ВидОпераций = Перечисления.ВидыОпераций.ОтИздательства;

будет значением по умолчанию...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

warshadow

Цитата: cska-fanat-kz от 23 мар 2011, 17:46
Ну перед Если ВидуОпераций что нить присвойте

ВидОпераций = Перечисления.ВидыОпераций.ОтИздательства;

будет значением по умолчанию...
Так сделал, отлично, теперь при выборе выделяет его тем самым обходит ошибку))
спасибо.
Теперь осталось с ТЧ-ями разобраться.

cska-fanat-kz

Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

warshadow

Вот что в общем получилось:


Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
Если ЭтоНовый() Тогда
ВидОперации = Перечисления.ВидыОпераций.ОтИздательства;
Если НЕ ВвестиЗначение(ВидОперации,"Выберите вид операции: ",Новый ОписаниеТипов("ПеречислениеСсылка.ВидыОпераций")) Тогда
Отказ = ИСТИНА;
КонецЕсли;
КонецЕсли;

   

Если ВидОперации = Перечисления.ВидыОпераций.ОтИздательства Тогда
ЭлементыФормы.Панель1.Страницы.Страница2.Видимость=Ложь;
ЭлементыФормы.ТблПоступлОтиздат.Видимость = ИСТИНА;
ЭлементыФормы.ТблПоступлДарЧитат.Видимость = ЛОЖЬ;
ЭлементыФормы.КоманднаяПанель2.Доступность=ложь;
           
ИначеЕсли ВидОперации = Перечисления.ВидыОпераций.ОтЧитателей Тогда
ЭлементыФормы.Панель1.Страницы.Страница1.Видимость=Ложь;
ЭлементыФормы.ТблПоступлДарЧитат.Видимость = ИСТИНА;
ЭлементыФормы.ТблПоступлОтиздат.Видимость = ЛОЖЬ;
ЭлементыФормы.КоманднаяПанель1.Доступность=ложь;
   
КонецЕсли;

КонецПроцедуры
Цитата: cska-fanat-kz от 23 мар 2011, 17:53
а что с ними?
У меня 2-е ТЧ , значит 2-а условия:

Для первой:
      Если ТблПоступлОтиздат.Количество()=0 тогда
    Сообщить("Табличная часть пуста!");
    Отказ= Истина;
   КонецЕсли;

Для второй:

   Если ТблПоступлДарЧитат.Количество()=0 тогда
Сообщить("Табличная часть пуста!");
Отказ= Истина;
КонецЕсли;

Дело в том, что программно страницы то закрывают для пользователя, но они же есть и когда при пустой ТЧ я пытаюсь провести "как-бы" один документ,но их же два(программно закрыто и один :) то мне выдается ошибка для 2 ТЧ.
Как программно определять ТЧ, чтобы условие было только на одну ТЧ?


Теги:

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

Рейтинг@Mail.ru

Поиск