|
Закрыть документ для редактирования | ☑ | ||
---|---|---|---|---|
0
stepanov1991
10.08.14
✎
20:47
|
Здравствуйте! есть документ в нем есть статус заявки Утверждена, как сделать, что бы если стоит этот статус, то его нельзя было редактировать?
СпМеню=Новый СписокЗначений; СпМеню.Очистить(); Для каждого Значение из Перечисления.СтатусЗаявкаТМЦ Цикл СпМеню.Добавить(Значение,Значение); КонецЦикла; //Выбераем статус Статус=СпМеню.ВыбратьЭлемент("Выберите статус..."); //статус не выбран... Если Статус=Неопределено Тогда Возврат; КонецЕсли; //статус выбран и начинаем изменять Для каждого текСтрока из МатериальныеЦенности Цикл ТекСтрока.СтатусЗаявкиТМЦ=Статус.Значение; КонецЦикла; //Изменение выполнено //Сообщить("Статус заявки изменен на: "+Статус.Представление); |
|||
1
stepanov1991
10.08.14
✎
20:48
|
А вот код самой кнопки с заявками. сверху
|
|||
2
vicof
10.08.14
✎
20:51
|
Перед открытием устанавливай только просмотр в зависимости от сатутса
|
|||
3
stepanov1991
10.08.14
✎
20:53
|
Если Статус = ПредопределенноеЗначение(
"Перечисление.СтатусЗаявкаТМЦ.Утверждена") Тогда ЭтаФорма.ТолькоПросмотр = Истина; КонецЕсли; Пишу вот так, выдает {Документ.ЗаявкаТМЦ.Форма.ФормаДокумента.Форма(268,6)}: Переменная не определена (Статус) Если <<?>>Статус = ПредопределенноеЗначение( (Проверка: Толстый клиент (обычное приложение)) |
|||
4
tixis
10.08.14
✎
21:03
|
(3) ну дык статус это что?
|
|||
5
tixis
10.08.14
✎
21:04
|
ты присваеваешь статус только в этой строке
Статус=СпМеню.ВыбратьЭлемент("Выберите статус..."); //статус не выбран... весь код покажи |
|||
6
stepanov1991
10.08.14
✎
21:06
|
Процедура КоманднаяПанель1кнИзмСтатусСтрок(Кнопка)
СпМеню=Новый СписокЗначений; СпМеню.Очистить(); Для каждого Значение из Перечисления.СтатусЗаявкаТМЦ Цикл СпМеню.Добавить(Значение,Значение); КонецЦикла; //Выбераем статус Статус=СпМеню.ВыбратьЭлемент("Выберите статус..."); //статус не выбран... Если Статус=Неопределено Тогда Возврат; КонецЕсли; //статус выбран и начинаем изменять Для каждого текСтрока из МатериальныеЦенности Цикл ТекСтрока.СтатусЗаявкиТМЦ=Статус.Значение; КонецЦикла; //Изменение выполнено //Сообщить("Статус заявки изменен на: "+Статус.Представление); КонецПроцедуры |
|||
7
Defender aka LINN
10.08.14
✎
21:10
|
(6) Это типа "найди 10 отличий от (0)"? Извини, но в такие игры сам играй, нам влом.
|
|||
8
stepanov1991
10.08.14
✎
21:12
|
"весь код покажи"
какой именно код? |
|||
9
Defender aka LINN
10.08.14
✎
21:15
|
"Переменная не определена (Статус)"
Какая именно буква требует перевода? |
|||
10
stepanov1991
10.08.14
✎
21:16
|
Весь код )
Процедура Печать(Элемент) Если ЭтоНовый() или ЭтаФорма.Модифицированность Тогда Ответ=Вопрос("Документ нужно сохранить. Выполнить?",РежимДиалогаВопрос.ДаНет); Если Ответ<>КодВозвратаДиалога.Да Тогда Возврат; КонецЕсли; ИспользоватьРежимПроведения=ИспользованиеРежимаПроведения.Неоперативный; Если НЕ ЗаписатьВФорме(РежимЗаписиДокумента.Проведение) Тогда Возврат; КонецЕсли; КонецЕсли; ТабДок = Новый ТабличныйДокумент; Макет = Документы.ЗаявкаТМЦ.ПолучитьМакет("Печать"); // //Шапка Шапка = Макет.ПолучитьОбласть("Шапка"); Шапка.Параметры.Заполнить(ЭтотОбъект); Шапка.Параметры.ПодписьСогласовано=ПодразделениеПолучатель.ПодписьСогласовано; Шапка.Параметры.ПодписьУтверждаю=ПодразделениеПолучатель.ПодписьУтверждаю; Шапка.Параметры.ПодписьСогласованоДолжность=ПодразделениеПолучатель.ПодписьСогласовано.Должность; Шапка.Параметры.ПодписьУтверждаюДолжность=ПодразделениеПолучатель.ПодписьУтверждаю.Должность; Шапка.Параметры.Дата=Формат(Шапка.Параметры.Дата, "ДЛФ=Д"); Шапка.Параметры.ПериодЗаявки=Формат(ДобавитьМесяц(Дата, 1), "ДФ=""ММММ гггг 'г.'"""); ТабДок.Вывести(Шапка); //// ШапкаТаблицы Строка Область = Макет.ПолучитьОбласть("ШапкаТаблицы"); ТабДок.Вывести(Область); ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); Для Каждого ТекСтрокаМатериальныеЦенности Из МатериальныеЦенности Цикл ОбластьСтрока.Параметры.Заполнить(ТекСтрокаМатериальныеЦенности); ТабДок.Вывести(ОбластьСтрока); КонецЦикла; ////подвал Область = Макет.ПолучитьОбласть("Подвал"); Область.Параметры.Заполнить(ЭтотОбъект); Область.Параметры.СуммаИтог=МатериальныеЦенности.Итог("СуммаСНДС"); ТабДок.Вывести(Область); ТабДок.АвтоМасштаб=Истина; ТабДок.ОриентацияСтраницы=ОриентацияСтраницы.Ландшафт; ТабДок.ОтображатьСетку = Ложь; ТабДок.Защита = Ложь; ТабДок.ТолькоПросмотр = Ложь; ТабДок.ОтображатьЗаголовки = Ложь; ТабДок.АвтоМасштаб=Истина; ТабДок.Показать(); КонецПроцедуры //************************** ШАПКА //мягкий поиск Процедура ОборудованиеОкончаниеВводаТекста(Элемент, Текст, Значение, СтандартнаяОбработка) ФормаВыбора=Справочники.Оборудование.ПолучитьФормуВыбора("ФормаВыбора"); ФормаВыбора.ОтборНаименованиеСодержит=Текст; ФормаВыбора.ОткрытьМодально(); Если ЗначениеЗаполнено(ФормаВыбора.РезультатВыбора) Тогда Текст=""; СтандартнаяОбработка=Ложь; Значение=ФормаВыбора.РезультатВыбора.Ссылка; КонецЕсли; КонецПроцедуры //************************** ТАБЛИЧНАЯ ЧАСТЬ МАТЕРИАЛЬНЫЕ ЦЕННОСТИ //очистим колонку ИД Процедура МатериальныеЦенностиПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование) Если Копирование Тогда ТекСтрока=ЭлементыФормы.МатериальныеЦенности.ТекущаяСтрока; Если ТекСтрока=Неопределено Тогда Возврат; КонецЕсли; //ТекСтрока.ОстСклад=0; ТекСтрока.ИДСтроки=""; КонецЕсли; КонецПроцедуры //пересчитывает сумму или цену в строке Процедура ПересчитатьСтроку(ТекСтрока, ИмяКолонки) Экспорт ТекСтрока.Количество=?(ТекСтрока.Количество=0, 1, ТекСтрока.Количество); Если ИмяКолонки="СуммаСНДС" Тогда ТекСтрока.Цена=ТекСтрока.СуммаСНДС/ТекСтрока.Количество; Иначе ТекСтрока.СуммаСНДС=ТекСтрока.Цена*ТекСтрока.Количество; КонецЕсли; Если НЕ ЗначениеЗаполнено(ТекСтрока.ИДСтроки) Тогда ТекСтрока.ИДСтроки=НОвый УникальныйИдентификатор; КонецЕсли; КонецПроцедуры //обновляет остаки /цены Процедура ОбновитьОстаткиЦены(Строки) Экспорт OLE_PbaseПодключение(); Если OLE_Pbase=Неопределено Тогда Возврат; КонецЕсли; ТЗДляОтправки=Новый ТаблицаЗначений; ТЗДляОтправки.Колонки.Добавить("Подразделение"); ТЗДляОтправки.Колонки.Добавить("Номенклатура"); Для каждого ТекСтр Из Строки Цикл НовСтр=ТЗДляОтправки.Добавить(); НовСтр.Подразделение=ПодразделениеПолучатель; НовСтр.Номенклатура=ТекСтр.Номенклатура; КонецЦикла; ТЗРезультат=глПолучитьТЗЦен(ТЗДляОтправки, ТекущаяДата(), , , Истина, Истина); //Приоритете цен поставщика + остатки и расход //ТЗРезультат.ВыбратьСтроку(); Для каждого ТекСтрока Из Строки Цикл ЕстьСтрока=ТЗРезультат.Найти(ТекСтрока.Номенклатура, "Номенклатура"); Если ЕстьСтрока<>Неопределено Тогда ЗаполнитьЗначенияСвойств(ТекСтрока, ЕстьСтрока); //сформируем краткую строку Поступления ЕстьСтрока.ЦенаПРимечание=СтрЗаменить(ЕстьСтрока.ЦенаПРимечание,"Пост: ",""); ЕстьСтрока.ЦенаПРимечание=СтрЗаменить(ЕстьСтрока.ЦенаПРимечание,"Поступление ТМЦ",""); ТекСтрока.ПоступлениеОбщаяБаза=СокрЛП(Окр(ЕстьСтрока.ЦенаСНДС,2,РежимОкругления.Окр15как20))+" / "+СокрЛП(ЕстьСтрока.ЦенаПРимечание); ТекСтрока.Цена=ЕстьСтрока.ЦенаСНДС; ПересчитатьСтроку(ТекСтрока, "Цена"); КонецЕсли; КонецЦикла; КонецПроцедуры //по кнопке обновить остатки цены Процедура КоманднаяПанель1кнОбновитьОстаткиЦеныВесьДокумент(Кнопка) ОбновитьОстаткиЦены(МатериальныеЦенности); КонецПроцедуры //Сумма при изменении количества Процедура МатериальныеЦенностиКоличествоПриИзменении(Элемент) ТекСтрока=ЭлементыФормы.МатериальныеЦенности.ТекущиеДанные; Если ТекСтрока=Неопределено Тогда Возврат; КонецЕсли; //расчет суммы ПересчитатьСтроку(ТекСтрока, "Количество"); КонецПроцедуры // Сумма при изменении цены Процедура МатериальныеЦенностиЦенаПриИзменении(Элемент) ТекСтрока=ЭлементыФормы.МатериальныеЦенности.ТекущаяСтрока; Если ТекСтрока=Неопределено Тогда Возврат; КонецЕсли; //расчет суммы ПересчитатьСтроку(ТекСтрока, "Цена"); КонецПроцедуры //при изменении суммы - пересчитываем цену Процедура МатериальныеЦенностиСуммаСНДСПриИзменении(Элемент) ТекСтрока=ЭлементыФормы.МатериальныеЦенности.ТекущаяСтрока; Если ТекСтрока=Неопределено Тогда Возврат; КонецЕсли; //расчет цены ПересчитатьСтроку(ТекСтрока, "СуммаСНДС"); КонецПроцедуры // при изменении номенклатуры подставим единицы измерений Процедура МатериальныеЦенностиНоменклатураПриИзменении(Элемент) ТекСтрока=ЭлементыФормы.МатериальныеЦенности.ТекущаяСтрока; Если ТекСтрока=Неопределено Тогда Возврат; КонецЕсли; ТекСтрока.ЕдиницаИзмерения=ТекСтрока.Номенклатура.ЕдИзмерения; МасСтрок=Новый Массив; МасСтрок.Добавить(ТекСтрока); ОбновитьОстаткиЦены(МасСтрок); КонецПроцедуры //мягкий поиск по части наименования Процедура МатериальныеЦенностиОборудованиеОкончаниеВводаТекста(Элемент, Текст, Значение, СтандартнаяОбработка) ФормаВыбора=Справочники.Оборудование.ПолучитьФормуВыбора("ФормаВыбора"); ФормаВыбора.ОтборНаименованиеСодержит=Текст; ФормаВыбора.ОткрытьМодально(); Если ЗначениеЗаполнено(ФормаВыбора.РезультатВыбора) Тогда Текст=""; СтандартнаяОбработка=Ложь; Значение=ФормаВыбора.РезультатВыбора.Ссылка; КонецЕсли; КонецПроцедуры //подсветим строки по статусу заявки Процедура МатериальныеЦенностиПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Если ДанныеСтроки.СтатусЗаявкиТМЦ=Перечисления.СтатусЗаявкаТМЦ.ВРаботеОМТС или ДанныеСтроки.СтатусЗаявкиТМЦ=Перечисления.СтатусЗаявкаТМЦ.Утверждена Тогда ОформлениеСтроки.ЦветФона=Новый Цвет(180, 246, 180); ИначеЕсли ДанныеСтроки.СтатусЗаявкиТМЦ=Перечисления.СтатусЗаявкаТМЦ.Отложена Тогда ОформлениеСтроки.ЦветФона=Новый Цвет(233, 234, 139); ИначеЕсли ДанныеСтроки.СтатусЗаявкиТМЦ=Перечисления.СтатусЗаявкаТМЦ.Отклонена Тогда ОформлениеСтроки.ЦветФона=Новый Цвет(255, 153, 153); Иначе ОформлениеСтроки.ЦветФона=WebЦвета.Белый; КонецЕсли; КонецПроцедуры //подставим ИД Процедура МатериальныеЦенностиПередОкончаниемРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования, Отказ) Если НЕ ЗначениеЗаполнено(Элемент.ТекущиеДанные.ИДСтроки) Тогда Элемент.ТекущиеДанные.ИДСтроки=НОвый УникальныйИдентификатор; КонецЕсли; КонецПроцедуры //************************** ПЕРДОПРЕДЕЛЕННЫЕ ПРОЦЕДУРЫ САМОЙ ФОРМЫ Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) //Если БазаОбщая<>Неопределено Тогда // СТК.ОтключитьИнформационнуюБазу(БазаОбщая); //КонецЕсли; КонецПроцедуры //чужие не открываем для некоторых пользовыателей Процедура ПередОткрытием(Отказ, СтандартнаяОбработка) //Если НЕ ЭтоНОвый() Тогда //КонецЕсли; КонецПроцедуры Процедура ПриОткрытии() Если ЭтоНовый() Тогда //подставим из настроек пользователя значения по умолчанию ПодразделениеПолучатель=ПараметрыСеанса.глПользователь.ТребованиеПолучатель; Автор=ПараметрыСеанса.глПользователь.Наименование; ////в новый документ передана дефектная ведомость - заполним сразу новый документ на основании //Если ЗначениеЗаполнено(ДокОснование) Тогда // КнОбновитьДокОснованиеНажатие(Неопределено); //КонецЕсли; //недоступные подразделения открываются на просмотр Иначе ОтказДоступа=глОтказДоступа(ЭтотОбъект); Если ОтказДоступа.Отказ Тогда //ЭтаФорма.ТолькоПросмотр=Истина; Предупреждение(ОтказДоступа.Описание,3); КонецЕсли; КонецЕсли; //в режиме просмотра закрываем лишние кнопки ЭлементыФормы.КоманднаяПанель1.Доступность= НЕ ЭтаФорма.ТолькоПросмотр; // Если ЭтотОбъект.Проведен Тогда //ЭтаФорма.ТолькоПросмотр = Истина; //КонецЕсли; Статус=ВыбратьЭлемент; Если Статус=ПредопределенноеЗначение( "Перечисление.СтатусЗаявкаТМЦ.Утверждена") Тогда ЭтаФорма.ТолькоПросмотр = Истина; КонецЕсли; КонецПроцедуры Процедура ОбновлениеОтображения() КонецПроцедуры //************************* ПОДБОРЫ и ЗАПОЛНЕНИЕ //режим подбора Остатки / Справочник / СправочникПоиск Процедура ОткрытьПодборОбщаяБаза(РежимПодбора) Если ОткрытаяФормаПодбораНоменклатуры=Неопределено Тогда ФормаПодбора=Обработки.ПодборНоменклатураОбщаяБаза.ПолучитьФорму(); ФормаПодбора.МатериальныеЦенности=МатериальныеЦенности; ФормаПодбора.ИмяКолонкиВыбрано="Количество"; ФормаПодбора.РежимПодбора=РежимПодбора; ФормаПодбора.Склад=Справочники.Подразделения.МатериальныйСклад; ФормаПодбора.ВладелецФормы=ЭтаФорма; ФормаПодбора.Открыть(); ОткрытаяФормаПодбораНоменклатуры=ФормаПодбора; ФормаПодбора.КнОбновитьОстаткиНажатие(Неопределено); Иначе Если ОткрытаяФормаПодбораНоменклатуры.ОТкрыта() Тогда ОткрытаяФормаПодбораНоменклатуры.Активизировать(); Иначе ОткрытаяФормаПодбораНоменклатуры.Открыть(); КонецЕсли; КонецЕсли; КонецПроцедуры //подбор из общей базы по справочнику Процедура КоманднаяПанель1кнПодборИзОбщейБазыСправочник(Кнопка) ОткрытьПодборОбщаяБаза("Справочник") КонецПроцедуры //подбор из общей базы по остаткам Процедура КоманднаяПанель1кнПодборИзОбщейБазы(Кнопка) ОткрытьПодборОбщаяБаза("Остатки") КонецПроцедуры //поиск в общей базе по справочнику Процедура КоманднаяПанель1кнПоискСправочникОбщаяБаза(Кнопка) ОткрытьПодборОбщаяБаза("ПоискСправочник") КонецПроцедуры //Заполнить по документу основанию Процедура КнОбновитьДокОснованиеНажатие(Элемент) Если НЕ ЗначениеЗаполнено(ДокОснование) Тогда Возврат; КонецЕсли; //заявка на ремонт Если ТипЗнч(ДокОснование)=Тип("ДокументСсылка.ЗаявкаНаРемонт") Тогда //ВремЗапрос=Новый Запрос("ВЫБРАТЬ РАЗЛИЧНЫЕ // | ЗаявкаНаРемонтМатериальныеЗатраты.Склад // |ИЗ // | Документ.ЗаявкаНаРемонт.МатериальныеЗатраты КАК ЗаявкаНаРемонтМатериальныеЗатраты // |ГДЕ // | ЗаявкаНаРемонтМатериальныеЗатраты.Ссылка = &ДокОснование // | И ЗаявкаНаРемонтМатериальныеЗатраты.Склад <> &ПодразделениеИсполнитель // | И ЗаявкаНаРемонтМатериальныеЗатраты.КоличествоПлан <> 0"); //ВремЗапрос.УстановитьПараметр("ДокОснование", ДокОснование); //ВремЗапрос.УстановитьПараметр("ПодразделениеИсполнитель", ДокОснование.ПодразделениеИсполнитель); //МенюСклады=ВремЗапрос.Выполнить().Выгрузить(); //Если НЕ МенюСклады.Количество() Тогда // Предупреждение("В "+СокрЛП(ДокОснование)+" нет доступных складов (мат.склад и т.д.) для формирования требования.",15); // Возврат; //КонецЕсли; // //ВыбСтрока=МенюСклады.ВыбратьСтроку("Склад-отправитель?"); //Если ВыбСтрока=Неопределено Тогда // Возврат; //КонецЕсли; // //Отправитель=ВыбСтрока.Склад; //Получатель=ДокОснование.ПодразделениеИсполнитель; ////Сообщить(Отправитель); // ////заполняем табличную часть //ВремЗапрос.Текст="ВЫБРАТЬ // | ЗаявкаНаРемонтМатериальныеЗатраты.ЕдиницаИзмерения, // | ЗаявкаНаРемонтМатериальныеЗатраты.КоличествоПлан КАК Затребовано, // | ЗаявкаНаРемонтМатериальныеЗатраты.Номенклатура, // | ЗаявкаНаРемонтМатериальныеЗатраты.Сумма КАК СуммаБезНДС, // | ЗаявкаНаРемонтРемонтыОборудования.ОбъектРемонта КАК Оборудование // |ИЗ // | Документ.ЗаявкаНаРемонт.МатериальныеЗатраты КАК ЗаявкаНаРемонтМатериальныеЗатраты // | ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаявкаНаРемонт.РемонтыОборудования КАК ЗаявкаНаРемонтРемонтыОборудования // | ПО ЗаявкаНаРемонтМатериальныеЗатраты.РемонтыОборудования_ID = ЗаявкаНаРемонтРемонтыОборудования.ID // |ГДЕ // | ЗаявкаНаРемонтМатериальныеЗатраты.Ссылка = &ДокОснование // | И ЗаявкаНаРемонтМатериальныеЗатраты.Склад = &Склад // | И ЗаявкаНаРемонтМатериальныеЗатраты.КоличествоПлан <> 0"; //ВремЗапрос.УстановитьПараметр("Склад", Отправитель); //ТЗТЧ=ВремЗапрос.Выполнить().Выгрузить(); //ТЗТЧ.Сортировать("Номенклатура"); // //Если МатериальныеЦенности.Количество() Тогда // Ответ=Вопрос("текущая таб. часть будет очищена. Продолжить?",РежимДиалогаВопрос.ДаНет); // Если Ответ<>КодВозвратаДиалога.Да Тогда // Возврат; // КонецЕсли; // МатериальныеЦенности.Очистить(); //КонецЕсли; // //Для каждого СтрТЗ Из ТЗТЧ Цикл // НовСтр=МатериальныеЦенности.Добавить(); // ЗаполнитьЗначенияСвойств(НовСтр, СтрТЗ); //КонецЦикла; КонецЕсли; //дефектная ведомочть КонецПроцедуры Процедура ДокОснованиеПриИзменении(Элемент) КнОбновитьДокОснованиеНажатие(Элемент); КонецПроцедуры //заказ поставщику Процедура ЗаказПоставщиков(Кнопка) Если ЭтоНовый() или ЭтаФорма.Модифицированность Тогда Ответ = Вопрос("Документ нужно сохранить. Выполнить?",РежимДиалогаВопрос.ДаНет); Если Ответ<>КодВозвратаДиалога.Да Тогда Возврат; КонецЕсли; ИспользоватьРежимПроведения=ИспользованиеРежимаПроведения.Неоперативный; Если НЕ ЗаписатьВФорме(РежимЗаписиДокумента.Проведение) Тогда Возврат; КонецЕсли; КонецЕсли; ТабДок = Новый ТабличныйДокумент; Макет1 = Документы.ЗаявкаТМЦ.ПолучитьМакет("ЗаказПоставщику"); // Заголовок ОбластьШапка = Макет1.ПолучитьОбласть("Заголовок"); ОбластьШапка.Параметры.Заполнить(ЭтотОбъект); ТабДок.Вывести(ОбластьШапка); //Поставщик ОбластьПоставщик = Макет1.ПолучитьОбласть("Поставщик"); //Если МатериальныеЦенности.Количество() Тогда // ОбластьПоставщик.Параметры.Поставщик = МатериальныеЦенности[0].ПоступлениеОбщаяБаза; //КонецЕсли; ТабДок.Вывести(ОбластьПоставщик); ОбластьПокупатель = Макет1.ПолучитьОбласть("Покупатель"); НазваниеОрг = Константы.Организация.Получить(); ОбластьПокупатель.Параметры.Организация = НазваниеОрг; ОбластьПокупатель.Параметры.ПодразделениеПолучатель = ПодразделениеПолучатель.Наименование; ТабДок.Вывести(ОбластьПокупатель); ОбластьШапкаТаблицы = Макет1.ПолучитьОбласть("ШапкаТаблицы"); ТабДок.Вывести(ОбластьШапкаТаблицы); ОбластьСтрока = Макет1.ПолучитьОбласть("Строка"); Для Каждого ТекСтрокаМатериальныеЦенности Из МатериальныеЦенности Цикл ОбластьСтрока.Параметры.Заполнить(ТекСтрокаМатериальныеЦенности); ТабДок.Вывести(ОбластьСтрока); ОбластьСтрока.Параметры.НомСтроки = ТекстрокаМатериальныеЦенности.НомерСтроки; ОбластьСтрока.Параметры.Количество = ТекСтрокаМатериальныеЦенности.Количество; ОбластьСтрока.Параметры.СуммаСНДС = ТекСтрокаМатериальныеЦенности.СуммаСНДС; ОбластьСтрока.Параметры.ЕденицаИзмерения = ТекСтрокаМатериальныеЦенности.ЕдиницаИзмерения; КонецЦикла; ОбластьИтог = Макет1.ПолучитьОбласть("Итого"); ОбластьИтог.Параметры.Заполнить(ЭтотОбъект); Если МатериальныеЦенности.Итог("СуммаСНДС") = NULL Тогда ОбластьИтог.Параметры.СуммаИтог = 0; Иначе ОбластьИтог.Параметры.СуммаИтог = МатериальныеЦенности.Итог("СуммаСНДС"); КонецЕсли; ТабДок.Вывести(ОбластьИтог); ОбластьСуммаПрописью = Макет1.ПолучитьОбласть("СуммаПрописью"); ОбластьСуммаПрописью.Параметры.Заполнить(ЭтотОбъект); ОбластьСуммаПрописью.Параметры.КолСтрок = МатериальныеЦенности.Количество(); ФормСтрока = "Л = ru_RU; ДП = Истина"; ПарПредмета="Рубль, рублей, рубля, м, копейка, копейки, копеек, ж, 2"; ОбластьСуммаПрописью.Параметры.СумПрописью = ЧислоПрописью(МатериальныеЦенности.Итог("СуммаСНДС"), ФормСтрока, ПарПредмета); ТабДок.Вывести(ОбластьСуммаПрописью); ОбластьПодписи = Макет1.ПолучитьОбласть("Подписи"); Табдок.Вывести(ОбластьПодписи); ТабДок.АвтоМасштаб=Истина; //ТабДок.ОриентацияСтраницы=ОриентацияСтраницы.Ландшафт; ТабДок.ОтображатьСетку = Ложь; ТабДок.Защита = Ложь; ТабДок.ТолькоПросмотр = Ложь; ТабДок.ОтображатьЗаголовки = Ложь; ТабДок.АвтоМасштаб=Истина; ТабДок.Показать(); КонецПроцедуры Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения) Для каждого ТекСтрокаМатериальныеЦенности Из МатериальныеЦенности Цикл Если ЗначениеЗаполнено(ТекСтрокаМатериальныеЦенности.СтатусЗаявкиТМЦ) Тогда Продолжить; КонецЕсли; ТекСтрокаМатериальныеЦенности.СтатусЗаявкиТМЦ = Перечисления.СтатусЗаявкаТМЦ.Оформление; КонецЦикла; КонецПроцедуры Процедура КоманднаяПанель1кнИзмСтатусСтрок(Кнопка) СпМеню=Новый СписокЗначений; СпМеню.Очистить(); Для каждого Значение из Перечисления.СтатусЗаявкаТМЦ Цикл СпМеню.Добавить(Значение,Значение); КонецЦикла; //Выбераем статус Статус=СпМеню.ВыбратьЭлемент("Выберите статус..."); //статус не выбран... Если Статус=Неопределено Тогда Возврат; КонецЕсли; //статус выбран и начинаем изменять Для каждого текСтрока из МатериальныеЦенности Цикл ТекСтрока.СтатусЗаявкиТМЦ=Статус.Значение; КонецЦикла; //Изменение выполнено //Сообщить("Статус заявки изменен на: "+Статус.Представление); КонецПроцедуры |
|||
11
GreatOne
10.08.14
✎
21:16
|
красавчик
|
|||
12
GreatOne
10.08.14
✎
21:17
|
(2) кстати, посмотрел СП, а чему конкретно ставить только просмотр? Такого свойства у Док.Объект нету. Всем кнопкам что ли? А командная панель?
|
|||
13
tixis
10.08.14
✎
21:17
|
(10) ипаааать......
|
|||
14
tixis
10.08.14
✎
21:18
|
(10) сам пазбирай
|
|||
15
tixis
10.08.14
✎
21:18
|
*разбирай
|
|||
16
GreatOne
10.08.14
✎
21:18
|
Я думал делает через
Отказ = Истина; Сообщить("Утверждена!"); |
|||
17
stepanov1991
10.08.14
✎
21:21
|
GreatOne, а через отказ истина как?
|
|||
18
GreatOne
10.08.14
✎
21:27
|
(17) пардон, никак, я думал запрет проведения, а тут редактирования
|
|||
19
GreatOne
10.08.14
✎
21:28
|
О, нашел через поиск
ЭтаФорма.ТолькоПросмотр = Истина; |
|||
20
tixis
10.08.14
✎
21:29
|
да ну вас, нашли ошибку "Пишу вот так, выдает
{Документ.ЗаявкаТМЦ.Форма.ФормаДокумента.Форма(268,6)}: Переменная не определена (Статус) Если <<?>>Статус = ПредопределенноеЗначение( (Проверка: Толстый клиент (обычное приложение))" ? |
|||
21
tixis
10.08.14
✎
21:31
|
где в приоткрытии определяется мать вашу статус????
|
|||
22
tixis
10.08.14
✎
21:33
|
или это реквизит с типом булево?
|
|||
23
Сепарь
10.08.14
✎
21:49
|
а если в рлс ? если статус перечисление то какие проблемы ? зачем засорять кодом конфу :)
|
|||
24
stepanov1991
10.08.14
✎
22:27
|
||||
25
hhhh
10.08.14
✎
22:49
|
(24) юморишь всё?
|
|||
26
stepanov1991
10.08.14
✎
23:08
|
hhhh , да какой там юмор
|
|||
27
hhhh
10.08.14
✎
23:35
|
(26) ну сколько можно постить элементарщину. Ну не тянешь увольняйся. Поле не найдено уже сам не можешь исправить. Или ты напился?
|
|||
28
EvgeniuXP
11.08.14
✎
00:06
|
Объект.Статус
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |