polozvik77 @ Сегодня, 13:13
, Добрий день! В договоре контрагента, там по моему есть галочка "Вести по документам расчетов с контрагентами" в бух учете
Profi_1C77 @ Сегодня, 11:02
, в мене написано запрос під специфіку нашого довідника ТМЦ. Там не важко викинути ті умови, які Вам не підходять і там все працюватиме.
Если ПустоеЗначение(выбФирма) = 0 Тогда ТекстЗапр = ТекстЗапр + " |Условие (Фир = выбФирма);"; КонецЕсли;
Если ПустоеЗначение(выбСклад) = 0 Тогда ТекстЗапр = ТекстЗапр + " |Условие ((Скл в выбСклад) ИЛИ (Скл = выбСклад));"; КонецЕсли;
Если ПустоеЗначение(выбТМЦ) = 0 Тогда ТекстЗапр = ТекстЗапр + " |Условие (ТМЦ в выбТМЦ);"; КонецЕсли;
ТекстЗапр = ТекстЗапр + " |Функция НОКво = НачОст(Кво); |Функция ПКво = Приход(Кво); |Функция РКво = Расход(Кво); |Функция КОКво = КонОст(Кво); |Группировка Скл Без Групп Упорядочить по Скл.Код; |Группировка ТМЦ упорядочить по ТМЦ.Код;";
Если ВыбТМЦ.РазмерСписка() = 0 Тогда Заг1 = Заг1 + "По всім ТМЦ. "; Иначе Заг1 = Заг1 + "По ТМЦ зі списку: " + ВыбТМЦ.ВСтрокуСРазделителями() + ". "; КонецЕсли; Если ВыбСклад.Выбран() = 0 Тогда Заг2 = Заг2 + "По всім складам."; Иначе Заг2 = Заг2 + "По складу " + ВыбСклад.Наименование + "."; КонецЕсли;
Если Запр.Выполнить(ТекстЗапр) = 0 Тогда Возврат; КонецЕсли;
Таб.ВывестиСекцию("Шапка");
Пока Запр.Группировка("Скл") = 1 Цикл ИндСкл = 0; текНом = 0; Пока Запр.Группировка("ТМЦ") = 1 Цикл Если Запр.ТМЦ.ЭтоГруппа()=0 Тогда УчЦена = Запр.ТМЦ.УчетнаяЦена.Получить(ДатаПо); КвоОст = (Запр.НОКво+Запр.ПКво)-Запр.РКво;
Если КвоОст = 0 Тогда Если ИндСкл = 0 Тогда Таб.ВывестиСекцию("Скл"); ИндСкл = 1; КонецЕсли; текНом = текНом + 1; Таб.ВывестиСекцию("ТМЦ"); КонецЕсли; КонецЕсли; КонецЦикла; КонецЦикла; Таб.Опции(0,0,Таб.ВысотаСекции("Шапка"),0); Таб.ТолькоПросмотр(1); Таб.ПараметрыСтраницы(2,100,,10,5,5,,,,,,); Таб.Показать("Залишки ТМЦ по складам"); КонецПроцедуры
kostya77 @ Сегодня, 8:35
, Пошук по найменуванню дуже тонка штука (не корректно може працювати)- любий лишній символ (пробіл, буква, крапка, кавичка і т.д) і все новий унікальний елемент довідника. Потрібно використовувати, якийсь унікальний реквізит - код, штрихкод
kostya77 @ Сегодня, 9:00
, Добрий день! Сформувати оборотну відомість по даному товару - переглянути документи, відкоригувати їх (якщо можливо) або ввести документ приходу товару (краще це робити з бухгалтером, який володіє повною інформацією про рух даного товару) . І встановити константу - яка забороняє проведення документів з від'ємними залишками, щоб в подальшому не було цих випадків.
kayfatuch @ Сегодня, 10:31
, ТЗ - це таблиця значеь чи таблична часть документу? бо це "трохи" різне. Якщо ТЧ, то там на полі Штрих стоїть напевно процедура з допомогою якої і заповнюються всі поля документу. аналогічні функції треба прописати і при зміні артикула ...
kayfatuch @ Сегодня, 1:08
, Добрий день! тобто ви довыднику не знаходите товар по ШК? Треба створити цей товар - заповнити всі поля в товарі, а потім додати його в ТЗ. В ТЗ "товар" це елемент довідника повинен бути, а ШК і артикул це реквізити товара
Slon747 @ Сегодня, 15:54
, а якщо зробити - ще одну форму списку тільки з англ.найменуванням і показувати її цим користувачам? можливо і бредова ідея - але як варіант
ФорматИзображения = 0; Если МойФормекс.ВыбратьЗначение(ФорматыИзображений, ФорматИзображения, , 2) = 0 Тогда Возврат; КонецЕсли;
ПутьКФайлу = ВыбратьПуть(ФорматИзображения); Если ПустоеЗначение(ПутьКФайлу) = 1 Тогда Возврат; КонецЕсли;
Если ПустоеЗначение(Таб) = 1 Тогда Возврат; КонецЕсли;
Попытка ТабДок = СоздатьОбъект("ТабличныйДокумент"); ТабДок.ЗагрузитьИзТаблицы(Таб); ТабДок.ЗаписатьКакИзображение(ПутьКФайлу, ФорматИзображения);
//** качество вроде тоже, а размер файла больше.... //Конвертер = СоздатьОбъект ("Йоксель.ГрафическийКонвертер"); //Конвертер.УстановитьДокумент (ТабДок); //Конвертер.КоличествоБитНаПиксел = 24; // //Картинка = Конвертер.ПолучитьИзображение (); //Картинка.Записать (ПутьКФайлу, 1);
Сообщить("Печатная форма сохранена: " + ПутьКФайлу );
Если Вопрос("Открыть сохраненный документ?", "Да+Нет") = "Нет" Тогда Возврат; КонецЕсли;
Попытка ЗапуститьПриложение(ПутьКФайлу); Исключение Сообщить("Не удалось открыть файл: " + ПутьКФайлу); КонецПопытки; Исключение Сообщить("Не удалось сохранить в "+ФорматИзображения+" файл."); Сообщить("Ошибка: " + ОписаниеОшибки()); КонецПопытки;
// Сформировать печатные формы объектов // // ВХОДЯЩИЕ: // ИменаМакетов - Строка - Имена макетов, перечисленные через запятую // МассивОбъектов - Массив - Массив ссылок на объекты которые нужно распечатать // // ИСХОДЯЩИЕ: // КоллекцияПечатныхФорм - Таблица значений - Сформированные табличные документы // ПараметрыВывода - Структура - Параметры сформированных табличных документов // Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "АктНаданняПослуг", НСтр("ru='Акт надання послуг';uk='Акт надання послуг'"), ПечатьАктНаданняПослуг(МассивОбъектов, ОбъектыПечати, ПараметрыВывода)); КонецПроцедуры
// Функция формирует табличный документ с печатной формой акта об обказании услуг // // Возвращаемое значение: // Табличный документ - печатная форма акта // Функция ПечатьАктНаданняПослуг(МассивОбъектов, ОбъектыПечати, ПараметрыВывода)
УстановитьПривилегированныйРежим(Истина);
ЗапросШапка = Новый Запрос; ЗапросШапка.Текст = "ВЫБРАТЬ | Номер, | Дата, | ДоговорКонтрагента, | ДоговорКонтрагента.Дата КАК ДоговорДата, | ДоговорКонтрагента.Номер КАК ДоговорНомер, | ДоговорКонтрагента.НаименованиеДляПечати КАК ДоговорНаименованиеДляПечати, | Получил КАК ПредставительПокупателя, | ПредставительОрганизации КАК ПредставительПоставщика, | Контрагент КАК Покупатель, | Контрагент.ЮридическоеФизическоеЛицо КАК ПокупательЮрФизЛицо, | Организация КАК Поставщик, | Организация, | Сделка, | СуммаДокумента, | ВалютаДокумента, | БанковскийСчетОрганизации, | СуммаВключаетНДС, | ВЫРАЗИТЬ(МестоСоставленияДокумента КАК СТРОКА(1000)) КАК МестоСоставленияДокумента |ИЗ | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг | |ГДЕ | РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент";
ЗапросУслуги = Новый Запрос; ЗапросУслуги.Текст = " |ВЫБРАТЬ | НомерСтроки КАК НомерСтрокиТЧ, | Номенклатура КАК Номенклатура, | Содержание КАК Товар, | Номенклатура.Код КАК Код, | Номенклатура.Артикул КАК Артикул, | Количество, | Номенклатура.БазоваяЕдиницаИзмерения.Представление КАК ЕдиницаИзмерения, | Цена, | Сумма, | СуммаСкидки, | СуммаБезСкидки, | СтавкаНДС, | СуммаНДС |ИЗ | Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслуг | |ГДЕ | РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент | |УПОРЯДОЧИТЬ ПО | НомерСтрокиТЧ |";
ЗапросТЧТовары = Новый Запрос; ЗапросТЧТовары.Текст = "ВЫБРАТЬ | Номенклатура, | Номенклатура.НаименованиеПолное КАК Товар, | Номенклатура.Код КАК Код, | Номенклатура.Артикул КАК Артикул, | Количество, | ЕдиницаИзмерения КАК ЕдиницаИзмерения, | Цена, | СуммаБезСкидки, | СуммаСкидки, | Сумма, | СуммаНДС, | НомерСтроки, | 1 КАК ID |ИЗ | (ВЫБРАТЬ | Номенклатура КАК Номенклатура, | ЕдиницаИзмерения КАК ЕдиницаИзмерения, | Цена КАК Цена, | СтавкаНДС КАК СтавкаНДС, | СУММА(Количество) КАК Количество, | СУММА(Сумма) КАК Сумма, | СУММА(СуммаБезСкидки)КАК СуммаБезСкидки, | СУММА(СуммаСкидки) КАК СуммаСкидки, | СУММА(СуммаНДС) КАК СуммаНДС, | МИНИМУМ(НомерСтроки) КАК НомерСтроки | ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг | ГДЕ | РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент | СГРУППИРОВАТЬ ПО | Номенклатура, | ЕдиницаИзмерения, | Цена, | СтавкаНДС | ) КАК ВложенныйЗапросПоТоварам ";
ТабДокумент = Новый ТабличныйДокумент; ТабДокумент.АвтоМасштаб = Истина;
Макет = ПолучитьМакет("Акт");
// печать производится на языке, указанном в настройках КодЯзыкаПечать = ПараметрыВывода.КодЯзыкаДляМногоязычныхПечатныхФорм; Макет.КодЯзыкаМакета = КодЯзыкаПечать;
ТекстЗапр = " |Период с ДатаС по ДатаПо;"; |ФирмаО = Регистр.Остатки.Фирма; |Скл = Регистр.Остатки.МестоХранения; |ТМЦ = Регистр.Остатки.ТМЦ; |УчЦена = Регистр.Остатки.ТМЦ.УчетнаяЦена; |Док = Регистр.Остатки.ТекущийДокумент; |Кво = Регистр.Остатки.ОстатокТовара; |Условие (Фир в выбФирма); // якщо пусто, то всим фірмам |Условие (Скл в выбСклад); |Условие (ТМЦ в выбТМЦ); |Группировка ФирмаО; |Группировка Скл без групп; |Группировка ТМЦ упорядочить по ТМЦ.Код; |Функция НОКво = НачОст(Кво); |Функция КОКво = КонОст(Кво); |Функция ПКво = Приход(Кво); |Функция РКво = Расход(Кво); |"; Если Запр.Выполнить(ТекстЗапр) = 0 Тогда Возврат; КонецЕсли;
Таб.ВывестиСекцию("Шапка");
Пока Запр.Группировка("ФирмаО") = 1 Цикл Таб.ВывестиСекцию("Фирма"); Пока Запр.Группировка("Скл") = 1 Цикл Таб.ВывестиСекцию("Склад"); Пока Запр.Группировка("ТМЦ") = 1 Цикл Таб.ВывестиСекцию("ТМЦ"); КонецЦикла; КонецЦикла; КонецЦикла; Таб.Показать();
kostya77 @ Сегодня, 10:49
, У меня оборотка для 15 счета - субконто "склады" и "инвестиции":
БухИтоги.ВыбратьСубконто(1,,,,,"код"); Пока БухИтоги.ПолучитьСубконто(1) = 1 Цикл БухИтоги.ВыбратьСубконто(2,,,,,"код"); Пока БухИтоги.ПолучитьСубконто(2) = 1 Цикл Если (БухИтоги.Субконто(2).ЭтоГруппа() = 1) Тогда Иначе Инв = БухИтоги.Субконто(2).Наименование; ЕдИзм = БухИтоги.Субконто(2).БазЕдиница; //ЕдиницаПоУмолчанию; ПечКолво = БухИтоги.СКД(3); Сальдо = БухИтоги.СКД(); Таб.ВывестиСекцию("Инвестиция"); Если ДвижениеДок = 1 Тогда БухИтоги.ВыбратьСчета(); Пока БухИтоги.ПолучитьСчет()=1 Цикл БухИтоги.ВыбратьПериоды(); Пока БухИтоги.ПолучитьПериод() = 1 Цикл Если ((БухИтоги.ДО(1)<>0) ИЛИ (БухИтоги.КО(1)<>0)) Тогда Док = БухИтоги.Операция.Документ; Сумма = Формат(БухИтоги.Операция.Сумма,"Ч12.2"); Таб.ВывестиСекцию("Док"); КонецЕсли; КонецЦикла; КонецЦикла; КонецЕсли; КонецЕсли; КонецЦикла; КонецЦикла;
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!