|
Заполнение полей печатной формы | ☑ | ||
---|---|---|---|---|
0
Shaggart
30.08.17
✎
10:36
|
Добрый день! БП 2.0. В справочнике ОС есть печатная форма ОС-6. Переоценку в базе никто не делал 3 года, а данные в инвентарную карточку должны попадать, задача заполнить поле предыдущим показателем, но проблема в том что показателей может быть 2, за 2013 и 2014 года, посему делаю проверку на заполненность строки, но не получаю результата...
Часть кода с условием Если ТаблицаПереоценок.Количество() > 0 Тогда СтрокиРаздела3.Параметры.ДатаПереоценки = ТаблицаПереоценок[0].Дата; СтрокиРаздела3.Параметры.КоэффициентПереоценки = Окр(ТаблицаПереоценок[0].ВосстановительнаяСтоимость/ТаблицаПереоценок[0].ПервоначальнаяСтоимость, 2, РежимОкругления.Окр15как20); СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки = ТаблицаПереоценок[0].ВосстановительнаяСтоимость; Иначе СтрокиРаздела3.Параметры.ДатаПереоценки = "-------------------"; СтрокиРаздела3.Параметры.КоэффициентПереоценки = "--------------------------------"; СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки = "-------------------------------"; КонецЕсли; Если ТаблицаПереоценок.Количество() > 1 Тогда СтрокиРаздела3.Параметры.ДатаПереоценки2 = ТаблицаПереоценок[1].Дата; СтрокиРаздела3.Параметры.КоэффициентПереоценки2 = Окр(ТаблицаПереоценок[1].ВосстановительнаяСтоимость/ТаблицаПереоценок[1].ПервоначальнаяСтоимость, 2, РежимОкругления.Окр15как20); СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки2 = ТаблицаПереоценок[1].ВосстановительнаяСтоимость; Иначе СтрокиРаздела3.Параметры.ДатаПереоценки2 = "-------------------"; СтрокиРаздела3.Параметры.КоэффициентПереоценки2 = "--------------------------------"; СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки2 = "-------------------------------"; КонецЕсли; Если НЕ ПустаяСтрока (СтрокиРаздела3.Параметры.ДатаПереоценки2 И СтрокиРаздела3.Параметры.КоэффициентПереоценки2 И СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки2) Тогда //Если ТаблицаПереоценок.Количество() > 2 Тогда СтрокиРаздела3.Параметры.ДатаПереоценки2 = СтрокиРаздела3.Параметры.ДатаПереоценки; СтрокиРаздела3.Параметры.КоэффициентПереоценки2 = СтрокиРаздела3.Параметры.КоэффициентПереоценки; СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки2 = СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки; Иначе Если ТаблицаПереоценок.Количество() > 2 Тогда СтрокиРаздела3.Параметры.ДатаПереоценки3 = СтрокиРаздела3.Параметры.ДатаПереоценки2; СтрокиРаздела3.Параметры.КоэффициентПереоценки3 = СтрокиРаздела3.Параметры.КоэффициентПереоценки2; СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки3 = СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки2; Иначе СтрокиРаздела3.Параметры.ДатаПереоценки3 = "-------------------"; СтрокиРаздела3.Параметры.КоэффициентПереоценки3 = "--------------------------------"; СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки3 = "-------------------------------"; КонецЕсли; КонецЕсли; Если ТаблицаПереоценок.Количество() > 3 Тогда СтрокиРаздела4.Параметры.ДатаПереоценки4 = ТаблицаПереоценок[3].Дата; СтрокиРаздела4.Параметры.КоэффициентПереоценки4 = Окр(ТаблицаПереоценок[3].ВосстановительнаяСтоимость/ТаблицаПереоценок[3].ПервоначальнаяСтоимость, 2, РежимОкругления.Окр15как20); СтрокиРаздела4.Параметры.ВосстановительнаяСтоимостьПереоценки4 = ТаблицаПереоценок[3].ВосстановительнаяСтоимость; Иначе СтрокиРаздела4.Параметры.ДатаПереоценки4 = "-------------------"; СтрокиРаздела4.Параметры.КоэффициентПереоценки4 = "--------------------------------"; СтрокиРаздела4.Параметры.ВосстановительнаяСтоимостьПереоценки4 = "-------------------------------"; Прошу от критики воздержаться и помочь по делу. Спасибо |
|||
1
h-sp
30.08.17
✎
11:23
|
(0) ПустаяСтрока (СтрокиРаздела3.Параметры.ДатаПереоценки2 И СтрокиРаздела3.Параметры.КоэффициентПереоценки2 И СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки2)
это непонятно Пуситая строка от чего? От булевого значения? |
|||
2
Shaggart
30.08.17
✎
11:26
|
Пустая строка на печатной форме, 3 параметра в ней, вот эти 3 параметра если пустые, то в них должно подставляться предыдущее значение, если они заполнены, то следующие за этими параметры заполняться должны этими значениями
|
|||
3
h-sp
30.08.17
✎
11:30
|
(2) функция ПустаяСтрока. ВЫ туда в параметр передаете ЛОЖЬ. Делайте 3 Пустыестроки
ПустаяСтрока() И ПустаяСтрока() И ПустаяСтрока() |
|||
4
Shaggart
30.08.17
✎
12:02
|
Все работает, в плане того, что формируется печатная форма, только в необходимые поля ничего не подставляется, если был заполнен один параметр, то автоматом не заполняется следующий
|
|||
5
Shaggart
30.08.17
✎
12:03
|
Если НЕ ПустаяСтрока (СтрокиРаздела3.Параметры.ДатаПереоценки2) И ПустаяСтрока (СтрокиРаздела3.Параметры.КоэффициентПереоценки2) И ПустаяСтрока (СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки2) Тогда
//Если ТаблицаПереоценок.Количество() > 2 Тогда СтрокиРаздела3.Параметры.ДатаПереоценки2 = СтрокиРаздела3.Параметры.ДатаПереоценки; СтрокиРаздела3.Параметры.КоэффициентПереоценки2 = СтрокиРаздела3.Параметры.КоэффициентПереоценки; СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки2 = СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки; Иначе Если ТаблицаПереоценок.Количество() > 2 Тогда СтрокиРаздела3.Параметры.ДатаПереоценки3 = СтрокиРаздела3.Параметры.ДатаПереоценки2; СтрокиРаздела3.Параметры.КоэффициентПереоценки3 = СтрокиРаздела3.Параметры.КоэффициентПереоценки2; СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки3 = СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки2; Иначе СтрокиРаздела3.Параметры.ДатаПереоценки3 = "-------------------"; СтрокиРаздела3.Параметры.КоэффициентПереоценки3 = "--------------------------------"; СтрокиРаздела3.Параметры.ВосстановительнаяСтоимостьПереоценки3 = "-------------------------------"; КонецЕсли; |
|||
6
h-sp
30.08.17
✎
13:01
|
(5) теперь "НЕ" пропустил везде. Просыпайся уже.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |