|
v7: как вывести в отдельной колонке артикул для отчёта остат. тмц | ☑ | ||
---|---|---|---|---|
0
флопик
30.10.15
✎
11:02
|
а то запутался уже куда что писать
|
|||
1
mikecool
30.10.15
✎
11:03
|
в настройках программы где то должна быть колонка для отчетов
там выбирался код или артикул |
|||
2
mikecool
30.10.15
✎
11:04
|
+1 читай в константах
|
|||
3
mikecool
30.10.15
✎
11:04
|
+1 если не так - то лезь в конфигуратор и смотри отчет
|
|||
4
флопик
30.10.15
✎
11:14
|
(2) я уже поставил в константах артикул, не помогло.
|
|||
5
флопик
30.10.15
✎
11:20
|
я короче в процедуре сформировать у отчета остатки тмц прописал
перем ПечАртикул; ТЗ.НоваяКолонка("ПечАртикул", "Строка"); ТЗ.ПечАртикул = ТМЦ.Артикул; ТМЦСтрока = "" + ТМЦ + ?(Константа.ПоказыватьАртикул = 1, " " + СокрЛП(ТМЦ.Артикул), ""); Что я делаю не так? |
|||
6
Duke1C
30.10.15
✎
11:29
|
(5) Всё!
Это весь код? ИЛИ ты, на свой взгляд, привел "только самые нужные" 3 строки? |
|||
7
флопик
30.10.15
✎
11:31
|
(6) вот весь код это процедуры
Процедура Сформировать(ЗакрытьДиалог=0, ВДокумент=0) Перем Запрос, ТекстЗапроса; Перем СписокИтогов; ПредставлениеЦены = ЦенаТовара.ПолучитьЗначение(ЦенаТовара.ТекущаяСтрока()); ВалютаЦены = глРубли; Если ПредставлениеЦены = "из справочника цен" Тогда Если ЦенаИзСправочника.Выбран() = 1 Тогда ВалютаЦены = ЦенаИзСправочника.Валюта; Иначе Предупреждение("Выберите, пожалуйста, тип используемой цены!"); Возврат; КонецЕсли; КонецЕсли; Если глПроверкаДаты(ДатаКонца,ДатаКонца)=0 Тогда Возврат; КонецЕсли; Если (ТипЗначенияСтр(Таб) <> "Таблица") ИЛИ (Обновить = 0) Тогда Таб = СоздатьОбъект("Таблица"); Иначе Таб.Очистить(); КонецЕсли; Если ВДокумент = 1 Тогда ТЗВДокумент = СоздатьОбъект("ТаблицаЗначений"); ТЗВДокумент.НоваяКолонка("Разделитель", "Справочник.Фирмы"); ТЗВДокумент.НоваяКолонка("Склад", "Справочник.Склады"); ТЗВДокумент.НоваяКолонка("Номенклатура","Справочник.Номенклатура"); ТЗВДокумент.НоваяКолонка("Количество", "Число"); ТЗВДокумент.НоваяКолонка("Единица", "Справочник.Единицы"); ТЗВДокумент.НоваяКолонка("Коэффициент", "Число"); ТЗВДокумент.НоваяКолонка("ЦенаПрод", "Число"); ТЗВДокумент.НоваяКолонка("Сумма", "Число"); КонецЕсли; Таб.ИсходнаяТаблица( "ОстаткиТМЦ" ); Расшифровка = СоздатьОбъект("СписокЗначений"); Путь = ""; ИмяФайла = ""; РасположениеФайла(Путь,ИмяФайла); ФайлОтчета = Путь + ИмяФайла; Расшифровка.Установить("Отчет", ?(ПустоеЗначение(ФайлОтчета) = 1,"ОстаткиТМЦ", ФайлОтчета)); // все настройки помещаем в список Расшифровка.Установить("ДатаКонца", ДатаКонца); Расшифровка.Установить("ВыбРазделитель1",ВыбРазделитель1); Расшифровка.Установить("ВыбРазделитель2",ВыбРазделитель2); Расшифровка.Установить("ВыбРазделитель3",ВыбРазделитель3); Расшифровка.Установить("ВидРазделителя",ВидРазделителя); Расшифровка.Установить("ВыбТМЦ", ВыбТМЦ); Расшифровка.Установить("ВыбСклад", ВыбСклад); Расшифровка.Установить("ВидЕдиницы", ВидЕдиницы); Расшифровка.Установить("ЦенаТовара", ЦенаТовара.ТекущаяСтрока()); Расшифровка.Установить("ЦенаИзСправочника", ЦенаИзСправочника); Расшифровка.Установить("ПоказатьКомиссию",ПоказатьКомиссию); Расшифровка.Установить("ИтогиПоКоличеству", ИтогиПоКоличеству); Расшифровка.Установить("ВыводитьЗаказанный",ВыводитьЗаказанный); Расшифровка.Установить("ПоказатьОстатки", ПоказатьОстатки.ТекущаяСтрока()); Расшифровка.Установить("Показатель", Показатель. ТекущаяСтрока()); глПриСменеСтрокиТаблицыМФ(1,ТекСтрокаВТаблице,Контекст); // записываем изменения если они были // запомним МФ только если он задан Если глМножественныйФильтрЗадан(ТаблицаМФ) = 1 Тогда Расшифровка.Установить("ТаблицаМФ", ТаблицаМФ); КонецЕсли; //Создание объекта типа Запрос Запрос = СоздатьОбъект("Запрос"); Если ПоказатьКомиссию = 1 Тогда ТекстЗапроса = ТекстЗапросаСКомиссией(); Иначе ТекстЗапроса = ТекстЗапросаБезКомиссии(); КонецЕсли; Если Показатель.ТекущаяСтрока() = 2 Тогда ТекстЗапроса = ТекстЗапроса + "Функция РезервКонОст = КонОст(Резерв);"; КонецЕсли; Если (ПредставлениеЦены = "отпускная цена (только розница)") Тогда ТекстЗапроса = ТекстЗапроса + "ЦенаПрод = Регистр.ОстаткиТМЦ.ЦенаПрод, Регистр.ПартииОтданные.Номенклатура.МинОстаток; |Условие (РозничныйСклад > 0); |Группировка ЦенаПрод;"; КонецЕсли; ТекстЗапроса = ТекстЗапроса + "Группировка Склад Все ВошедшиеВЗапрос;"; Если ПоказатьКомиссию = 1 Тогда ТекстЗапроса = ТекстЗапроса + "Группировка Комиссионер без групп Все ВошедшиеВЗапрос ;"; КонецЕсли; Загол=""; НетОш = 1; // нет ошибок при наложении фильтров Если ВидРазделителя = 1 Тогда НетОш = НетОш * глФильтрПоПеременнойЗапроса(ТаблицаМФ, "Фирма",ВыбРазделитель1,"ВыбРазделитель1",ТекстЗапроса,Загол); НетОш = НетОш * глФильтрПоПеременнойЗапроса(ТаблицаМФ, "ЮрЛицо",,,ТекстЗапроса,Загол); НетОш = НетОш * глФильтрПоПеременнойЗапроса(ТаблицаМФ, "УпрАналитика",,,ТекстЗапроса,Загол); ИначеЕсли ВидРазделителя = 2 Тогда НетОш = НетОш * глФильтрПоПеременнойЗапроса(ТаблицаМФ, "ЮрЛицо",ВыбРазделитель2,"ВыбРазделитель2",ТекстЗапроса,Загол); НетОш = НетОш * глФильтрПоПеременнойЗапроса(ТаблицаМФ, "Фирма",,,ТекстЗапроса,Загол); НетОш = НетОш * глФильтрПоПеременнойЗапроса(ТаблицаМФ, "УпрАналитика",,,ТекстЗапроса,Загол); ИначеЕсли ВидРазделителя = 3 Тогда НетОш = НетОш * глФильтрПоПеременнойЗапроса(ТаблицаМФ, "УпрАналитика",ВыбРазделитель3,"ВыбРазделитель3",ТекстЗапроса,Загол); НетОш = НетОш * глФильтрПоПеременнойЗапроса(ТаблицаМФ, "Фирма",,,ТекстЗапроса,Загол); НетОш = НетОш * глФильтрПоПеременнойЗапроса(ТаблицаМФ, "ЮрЛицо",,,ТекстЗапроса,Загол); КонецЕсли; НетОш = НетОш * глФильтрПоПеременнойЗапроса(ТаблицаМФ, "Номенклатура", ВыбТМЦ, "ВыбТМЦ", ТекстЗапроса,Загол,"СвойстваНоменклатуры"); НетОш = НетОш * глФильтрПоПеременнойЗапроса(ТаблицаМФ, "Склад", ВыбСклад, "ВыбСклад", ТекстЗапроса,Загол); Если НетОш = 0 Тогда Возврат; КонецЕсли; Если Показатель.ТекущаяСтрока()=1 Тогда ПечЗаголовок = "Остатки ТМЦ на складах"; Иначе ПечЗаголовок = "Свободные остатки ТМЦ на складах"; КонецЕсли; Если ПоказатьКомиссию = 1 Тогда ПечЗаголовок = ПечЗаголовок + " и у комиссионеров"; КонецЕсли; ПечЗаголовокСтолбца = ""; // Если ошибка в запросе, то выход из процедуры Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда Возврат; КонецЕсли; ТЗИтогов=СоздатьОбъект("ТаблицаЗначений"); ТЗИтоговКомиссия=СоздатьОбъект("ТаблицаЗначений"); Если ((ПредставлениеЦены="усредненная себестоимость с НДС") ИЛИ (ПредставлениеЦены="усредненная себестоимость без НДС") ) Тогда // если считаем себестоимость из регистра партии товаров ВремРегистры=СоздатьОбъект("Регистры"); РегПартии=ВремРегистры.ПартииНаличие; РегОтданные = ВремРегистры.ПартииОтданные; Если ВидРазделителя = 1 Тогда // Фильтруем по фирме Если ВыбРазделитель1.Выбран() = 1 Тогда РегПартии.УстановитьЗначениеФильтра("Фирма", ВыбРазделитель1); РегОтданные.УстановитьЗначениеФильтра("Фирма", ВыбРазделитель1); КонецЕсли; ИначеЕсли ВидРазделителя = 2 Тогда // Фильтруем по юр. лицу Если ВыбРазделитель2.Выбран() = 1 Тогда СписокФирм = СоздатьОбъект("СписокЗначений"); СпрФирм = СоздатьОбъект("Справочник.Фирмы"); СпрФирм.ВыбратьЭлементы(); Пока СпрФирм.ПолучитьЭлемент() = 1 Цикл Если СпрФирм.ЮрЛицо = ВыбРазделитель2 Тогда СписокФирм.ДобавитьЗначение(СпрФирм.ТекущийЭлемент()); КонецЕсли; РегПартии.УстановитьЗначениеФильтра("Фирма", СписокФирм, 2); РегОтданные.УстановитьЗначениеФильтра("Фирма", СписокФирм, 2); КонецЦикла; КонецЕсли; ИначеЕсли ВидРазделителя = 3 Тогда // Фильтруем по упр. аналитике Если ВыбРазделитель3.Выбран() = 1 Тогда СписокФирм = СоздатьОбъект("СписокЗначений"); СпрФирм = СоздатьОбъект("Справочник.Фирмы"); СпрФирм.ВыбратьЭлементы(); Пока СпрФирм.ПолучитьЭлемент() = 1 Цикл Если СпрФирм.УпрАналитика = ВыбРазделитель3 Тогда СписокФирм.ДобавитьЗначение(СпрФирм.ТекущийЭлемент()); КонецЕсли; КонецЦикла; РегПартии.УстановитьЗначениеФильтра("Фирма", СписокФирм, 2); РегОтданные.УстановитьЗначениеФильтра("Фирма", СписокФирм, 2); КонецЕсли; КонецЕсли; Если (ДатаКонца<ПолучитьДатуТА()) Тогда РегПартии.ВременныйРасчет(); РегОтданные.ВременныйРасчет(); ВремРегистры.РассчитатьРегистрыПО(ДатаКонца); КонецЕсли; РегПартии.ВыгрузитьИтоги(ТЗИтогов,0,1); ТЗИтогов.Свернуть("Номенклатура","СуммаРуб, СуммаБезНДС, Количество"); РегОтданные.ВыгрузитьИтоги(ТЗИтоговКомиссия,0,0); ТЗИтоговКомиссия.Свернуть("Номенклатура","СуммаРуб, СуммаБезНДС, Количество"); ТЗИтоговКомиссия.ВыбратьСтроки(); Пока ТЗИтоговКомиссия.ПолучитьСтроку() = 1 Цикл ТЗИтогов.НоваяСтрока(); ТЗИтогов.Номенклатура = ТЗИтоговКомиссия.Номенклатура; ТЗИтогов.Количество = ТЗИтоговКомиссия.Количество; ТЗИтогов.СуммаРуб = ТЗИтоговКомиссия.СуммаРуб; ТЗИтогов.СуммаБезНДС = ТЗИтоговКомиссия.СуммаБезНДС; КонецЦикла; ТЗИтогов.Свернуть("Номенклатура","СуммаРуб, СуммаБезНДС, Количество"); КонецЕсли; ТЗ = СоздатьОбъект("ТаблицаЗначений"); ТЗ.НоваяКолонка("ПечТекстСтроки", "Строка"); ТЗ.НоваяКолонка("ПечЕд", "Справочник.Единицы"); ТЗ.НоваяКолонка("Уровень", "Число"); ТЗ.НоваяКолонка("ТекРасшифровка", "Справочник.Номенклатура"); ТЗ.НоваяКолонка("Родитель", "Справочник.Номенклатура"); Если ПредставлениеЦены <> "не показывать" Тогда ТЗ.НоваяКолонка("Цена", "Строка"); КонецЕсли; Если ВыводитьЗаказанный = 1 Тогда ТЗ.НоваяКолонка("Заказано", "Строка"); КонецЕсли; // сформируем список складов. ФлагВозврата = 0; СписокСкладов = СоздатьОбъект("СписокЗначений"); Пока (Запрос.Группировка("Номенклатура") = 1) и (ФлагВозврата <> 1) Цикл Если Запрос.ЭтоГруппа("Номенклатура")=1 Тогда Продолжить; КонецЕсли; Если ПредставлениеЦены = "отпускная цена (только розница)" Тогда Пока (Запрос.Группировка("ЦенаПрод") = 1) и (ФлагВозврата <> 1) Цикл ДобавитьСклады(Запрос, ФлагВозврата, СписокСкладов); КонецЦикла; Иначе ДобавитьСклады(Запрос, ФлагВозврата, СписокСкладов); КонецЕсли; КонецЦикла; глЧислоСтрок = 0; Таб.ВывестиСекцию("Кнопки"); Таб.ВывестиСекцию("Шапка"); Таб.ВывестиСекцию("ШапкаТаблицы|ТМЦ"); Если ВыводитьЗаказанный = 1 Тогда Таб.ПрисоединитьСекцию("ШапкаТаблицы|Заказано"); КонецЕсли; // выводим шапку на каждой странице НачПовт = Таб.ВысотаСекции("Кнопки") + Таб.ВысотаСекции("Шапка"); КонПовт = НачПовт + Таб.ВысотаСекции("ШапкаТаблицы"); Таб.ПовторятьПриПечатиСтроки(НачПовт + 1, КонПовт); Если ПредставлениеЦены <> "не показывать" Тогда Если ПредставлениеЦены = "усредненная себестоимость с НДС" Тогда СтрокаЦены = "Усред. себест-ть с НДС"; ИначеЕсли ПредставлениеЦены = "усредненная себестоимость без НДС" Тогда СтрокаЦены = "Усред. себест-ть без НДС"; ИначеЕсли ПредставлениеЦены = "отпускная цена (только розница)" Тогда СтрокаЦены = "Отпускная цена"; ИначеЕсли ПредставлениеЦены = "из справочника цен" Тогда СтрокаЦены = Строка(ЦенаИзСправочника) + " цена"; КонецЕсли; СтрокаЦены = СтрокаЦены + РазделительСтрок +"("+Строка(ВалютаЦены) + ")"; Таб.ПрисоединитьСекцию("ШапкаТаблицы|Цена"); КонецЕсли; Для Сч =1 По СписокСкладов.РазмерСписка() Цикл ПечСклад = СписокСкладов.ПолучитьЗначение(Сч); Если ПечСклад.Вид() = "Склады" Тогда Если (ПредставлениеЦены <> "не показывать") и ((ПредставлениеЦены <> "отпускная цена (только розница)") или (ПечСклад.РозничныйСклад = 1)) Тогда Таб.ПрисоединитьСекцию("ШапкаТаблицы|Сумма"); Иначе Таб.ПрисоединитьСекцию("ШапкаТаблицы|Склад"); КонецЕсли; Иначе Если (ПредставлениеЦены <> "не показывать") и (ПредставлениеЦены <> "отпускная цена (только розница)") тогда Таб.ПрисоединитьСекцию("ШапкаТаблицы|Сумма"); Иначе Таб.ПрисоединитьСекцию("ШапкаТаблицы|Склад"); КонецЕсли; КонецЕсли; КонецЦикла; глОживить(1); Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 3, "ОстаткиТМЦ", "ОстаткиТМЦ"); СписокГрупп = СоздатьОбъект("СписокЗначений"); Запрос.ВНачалоВыборки(); Пока (Запрос.Группировка("Номенклатура") = 1) Цикл ТМЦ = Запрос.Номенклатура; Если Показатель.ТекущаяСтрока()=1 Тогда ПоказательАнализа = Запрос.КоличествоКонОст; Иначе ПоказательАнализа = Запрос.КоличествоКонОст - Запрос.РезервКонОст; КонецЕсли; // проверим условие Если ПоказатьОстатки.ТекущаяСтрока()=1 Тогда // все ненулевые // выводим все Если ПоказательАнализа = 0 Тогда Продолжить; КонецЕсли; ИначеЕсли ПоказатьОстатки.ТекущаяСтрока()=2 Тогда // все // выводим все ИначеЕсли ПоказатьОстатки.ТекущаяСтрока()=3 Тогда // все отрицательные Если ПоказательАнализа >= 0 Тогда // проверим Продолжить; КонецЕсли; ИначеЕсли ПоказатьОстатки.ТекущаяСтрока()=4 Тогда // меньше мин. остатка Если ПоказательАнализа >= ТМЦ.МинОстаток Тогда Продолжить; КонецЕсли; ИначеЕсли ПоказатьОстатки.ТекущаяСтрока()=5 Тогда // все, имеющиеся в наличи Если ПоказательАнализа <= 0 Тогда Продолжить; КонецЕсли; КонецЕсли; Если Запрос.ЭтоГруппа("Номенклатура")=1 Тогда СписокГрупп.ДобавитьЗначение(ТМЦ); Продолжить; КонецЕсли; // выводим группы ТМЦ Пока СписокГрупп.РазмерСписка()>0 Цикл Группа = СписокГрупп.ПолучитьЗначение(1); Если ТМЦ.ПринадлежитГруппе(Группа)=1 Тогда ТЗ.НоваяСтрока(); ТЗ.Уровень = СписокГрупп.РазмерСписка(); ТЗ.ПечТекстСтроки = Группа.Наименование; ТЗ.Родитель = Группа.Родитель; ТЗ.ТекРасшифровка = Группа; КонецЕсли; СписокГрупп.УдалитьЗначение(1); КонецЦикла; ТМЦСтрока = "" + ТМЦ + ?(Константа.ПоказыватьАртикул = 1, " " + СокрЛП(ТМЦ.Артикул), ""); Если ПредставлениеЦены = "отпускная цена (только розница)" Тогда Пока Запрос.Группировка("ЦенаПрод") = 1 Цикл ТЗ.НоваяСтрока(); ТЗ.Уровень = 0; ТЗ.ТекРасшифровка = ТМЦ; ТЗ.Родитель = ТМЦ.Родитель; ТЗ.ПечЕд = ?(ВидЕдиницы = 1,ТМЦ.ОсновнаяЕдиница, ТМЦ.БазоваяЕдиница); ТЗ.ПечТекстСтроки = ТМЦСтрока + ?(ТМЦ.МинОстаток=0,"",", мин. остаток = "+СокрЛП(глФРМКоличество(ТМЦ.МинОстаток,ТЗ.ПечЕд))); Если ВыводитьЗаказанный = 1 Тогда ТЗ.Заказано = Запрос.ЗаказаноКонОст; КонецЕсли; ЗаполнитьСтроку(ТЗ, Запрос, СписокСкладов, ВДокумент); КонецЦикла; иначе ТЗ.НоваяСтрока(); ТЗ.Уровень = 0; ТЗ.ТекРасшифровка = ТМЦ; ТЗ.Родитель = ТМЦ.Родитель; ТЗ.ПечЕд = ?(ВидЕдиницы = 1,ТМЦ.ОсновнаяЕдиница, ТМЦ.БазоваяЕдиница); ТЗ.ПечТекстСтроки = ТМЦСтрока + ?(ТМЦ.МинОстаток=0,"",", мин. остаток = "+СокрЛП(глФРМКоличество(ТМЦ.МинОстаток,ТЗ.ПечЕд))); Если ВыводитьЗаказанный = 1 Тогда ТЗ.Заказано = Запрос.ЗаказаноКонОст; КонецЕсли; ЗаполнитьСтроку(ТЗ, Запрос, СписокСкладов, ВДокумент); КонецЕсли; глОживить(1); КонецЦикла; // Последняя строка для общих итогов ТЗ.НоваяСтрока(); ТЗ.Уровень = 12; РассчитатьИтогиПоГруппам(СписокСкладов); ТЗ.ВыбратьСтроки(); Пока ТЗ.ПолучитьСтроку() = 1 Цикл КоличествоНаСкладе = 0; Для Сч = 1 По СписокСкладов.РазмерСписка() Цикл ТекСклад = СписокСкладов.ПолучитьЗначение(Сч); КоличествоНаСкладе = КоличествоНаСкладе + ТЗ.ПолучитьЗначение(ТЗ.НомерСтроки, "Количество" + Сч); КонецЦикла; Если ТЗ.Уровень = МаксимальныйУровень Тогда Если КоличествоНаСкладе = 0 Тогда Продолжить; КонецЕсли; КонецЕсли; ПечТекстСтроки = ТЗ.ПечТекстСтроки; ПечЕд = ТЗ.ПечЕд; ТекРасшифровка = ТЗ.ТекРасшифровка; Если (ТЗ.Уровень > 0) И (ТЗ.Уровень < 12) Тогда ИмяСекции = "СтрокаГ"; ИначеЕсли ТЗ.Уровень = 12 Тогда ИмяСекции = ?((ПредставлениеЦены <> "не показывать") ИЛИ (ИтогиПоКоличеству = 1),"ПодвалИтого","Подвал"); Иначе ИмяСекции = "Строка" КонецЕсли; Таб.ВывестиСекцию(ИмяСекции+"|ТМЦ"); Если ВыводитьЗаказанный = 1 Тогда ПечЗаказано = глФРМКоличество(ТЗ.Заказано); Таб.ПрисоединитьСекцию(ИмяСекции + "|Заказано"); КонецЕсли; Если (ПредставлениеЦены <> "не показывать") Тогда ПечЦена = глФРМ(ТЗ.Цена); Таб.ПрисоединитьСекцию(ИмяСекции + "|Цена"); КонецЕсли; Сч = 0; Для Сч = 1 По СписокСкладов.РазмерСписка() Цикл ТекСклад = СписокСкладов.ПолучитьЗначение(Сч); ПечКол = глФРМКоличество(ТЗ.ПолучитьЗначение(ТЗ.НомерСтроки, "Количество" + Сч)); Если ТекСклад.Вид() = "Склады" Тогда Если (ПредставлениеЦены <> "не показывать") и ((ПредставлениеЦены <> "отпускная цена (только розница)") или (ТекСклад.РозничныйСклад = 1)) Тогда ПечСумма = глФрм(ТЗ.ПолучитьЗначение(ТЗ.НомерСтроки, "Сумма" + Сч)); Таб.ПрисоединитьСекцию(ИмяСекции + "|Сумма"); Иначе Таб.ПрисоединитьСекцию(ИмяСекции + "|Склад"); КонецЕсли; Иначе Если (ПредставлениеЦены <> "не показывать") и (ПредставлениеЦены <> "отпускная цена (только розница)") Тогда ПечСумма = глФрм(ТЗ.ПолучитьЗначение(ТЗ.НомерСтроки, "Сумма" + Сч)); Таб.ПрисоединитьСекцию(ИмяСекции + "|Сумма"); Иначе Таб.ПрисоединитьСекцию(ИмяСекции + "|Склад"); КонецЕсли; КонецЕсли; КонецЦикла; КонецЦикла; Таб.ОбластьПечати(3); // Вывод заполненной формы Если ВДокумент = 0 Тогда Таб.ТолькоПросмотр(1); Если глПолучитьПолномочие("РазрешитьРедактированиеТаблиц") = 0 Тогда Таб.Защита(1); КонецЕсли; Таб.Показать("Остатки ТМЦ", ""); КонецЕсли; Если (Обновить = 2)ИЛИ(ЗакрытьДиалог=1) Тогда СтрокаДействийФормы = "#Закрыть"; КонецЕсли; КонецПроцедуры |
|||
8
флопик
30.10.15
✎
11:32
|
(6) Это без тех строк которые я вставлял
|
|||
9
Ясный перец
30.10.15
✎
11:44
|
Вернёмся к сабжу:
чтобы "вывести в отдельной колонке артикул для отчёта" нужно как минимум создать эту "колонку" в таблице печатной формы, то есть подготовить место для печати артикула и в итоге вывести туда его значение. |
|||
10
sapphire
30.10.15
✎
11:46
|
(0) regprint.ert
|
|||
11
флопик
30.10.15
✎
11:46
|
(9) создал, всё сделал
|
|||
12
флопик
30.10.15
✎
11:47
|
может у кого пример есть? Кто добавлял уже?
|
|||
13
sapphire
30.10.15
✎
11:48
|
||||
14
Масянька
30.10.15
✎
11:48
|
(12) Покажи - ЗаполнитьСтроку(ТЗ, Запрос, СписокСкладов, ВДокумент);
|
|||
15
флопик
30.10.15
✎
11:49
|
(13) извиняюсь а какой именно?
|
|||
16
Масянька
30.10.15
✎
11:49
|
+(14) Конфа какая?
|
|||
17
флопик
30.10.15
✎
11:50
|
(16) Торговля и склад
|
|||
18
Масянька
30.10.15
✎
11:52
|
(17) Тут:
Запрос.ВНачалоВыборки(); Пока (Запрос.Группировка("Номенклатура") = 1) Цикл ТМЦ = Запрос.Номенклатура; После ТМЦ и вставляй. В Запросе нужно получить артикул, на форме отчета поле сделать для артикула. |
|||
19
sapphire
30.10.15
✎
11:52
|
Не играет роли какая конфа.
Добавить колонку в макете в свойствах указать выражение Номенклатура.Артикул |
|||
20
sapphire
30.10.15
✎
11:52
|
(18) Зачем?
|
|||
21
Масянька
30.10.15
✎
11:56
|
(20) Чтобы ты спросил.
Для начала открой "Остатки ТМЦ" и посмотри. |
|||
22
флопик
30.10.15
✎
11:58
|
всем спасибо, сейчас попробую.
|
|||
23
HawkEye
30.10.15
✎
12:03
|
(19) не играет? даже если в конфе нет справочника Номенклатура или реквизита Артикул в справочнике Номенклатура? )))
и какая связь того, что написано в св-вах с идентификаторами метаданных?... силен ))) |
|||
24
Масянька
30.10.15
✎
12:12
|
(23) Тогда (нет справочника и артикула) - точно не играет :)))))))))))
|
|||
25
Ясный перец
30.10.15
✎
12:20
|
Я бы в таблицу ОстаткиТМЦ в вертикальную секцию "ТМЦ" добавил бы колонку для вывода артикула. И в образовавшейся ячейке горизонтальной секции "Строка" вывел бы переменную ПечАртикул, значение которой вычислялось бы в модуле
между строками ПечТекстСтроки = ТЗ.ПечТекстСтроки; ПечЕд = ТЗ.ПечЕд; То есть: ПечТекстСтроки = ТЗ.ПечТекстСтроки; ПечАртикул = ТЗ.ПечАртикул; ПечЕд = ТЗ.ПечЕд; Но сначала сохранил бы отчёт как внешний, все изменения внёс бы в него и после доработок вывел бы в "Дополнительные возможности" ;) |
|||
26
флопик
30.10.15
✎
12:31
|
(23) А у меня и справочник и реквизит Артикул есть, может можно как то по проще все это сделать?
|
|||
27
флопик
30.10.15
✎
12:31
|
а то мозги уже вскипели.
|
|||
28
Ясный перец
30.10.15
✎
12:33
|
(26) В (25) куда уж проще?
|
|||
29
флопик
30.10.15
✎
12:35
|
(28) там ошибку выдает
|
|||
30
Масянька
30.10.15
✎
12:36
|
(26) В запросе добавляешь:
|КодНоменклатуры= Регистр.ОстаткиТМЦ.Номенклатура.Код, | Регистр.Заказы.Номенклатура.Код, | Регистр.РезервыТМЦ.Номенклатура.Код; Только вместо кода - свой артикул. Потом (18) Потом в печ. форме там, где секция "Строка", ячейка "ПечТекстСтроки", вставляешь новую ячейку со своим артикулом. Только секции (вертикальные смотри). Усё. Я код вставляла. Всё - арбайтэн. |
|||
31
Масянька
30.10.15
✎
12:39
|
+ (30) Не, бери лучше код номенклатуры, а в (18):
Уже из кода получай артикул... Хотя, можно и из самой номенклатуры... |
|||
32
Ясный перец
30.10.15
✎
12:48
|
(29) А подумать?... ;)
|
|||
33
флопик
30.10.15
✎
12:52
|
всем спасибо, тема закрыта. все сделал
|
|||
34
HawkEye
30.10.15
✎
13:55
|
(33) ну вот.. а я только собирался писать )))
ну сделал так сделал.. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |