Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Войти | Зарегистрироваться )



История благодарностей участнику вомбат ::: Спасибо сказали: 16 раз
Дата поста: В теме: За сообщение: Спасибо сказали:
04.09.09, 17:43 Пара вопросов...
Что за конфа такая "БП Украина"?
Если Бухгалтерия для Украины, то нужно править конфигурацию. В частности курить общий модуль "Бухгалтерские отчеты", процедура ВывестиГруппировкуОборотноСальдовойВедомостиПоСчету.
MATEVI,
01.09.09, 16:35 Нужна помощь в работе с запросами
Чуть не забыл. Регистр партий нужно поправить - добавить измерение "Партия", ну и движения ПН тоже подправить.
Vofka,
01.09.09, 16:25 Нужна помощь в работе с запросами


Процедура ОбработкаПроведения(Отказ, Режим)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Накл.Номенклатура КАК Номенклатура,
| Ост.Партия КАК Партия,
| ЕСТЬNULL(Ост.КоличествоОстаток, 0) КАК КолОст,
| ЕСТЬNULL(Ост.СуммаОстаток, 0) КАК СуммаОст,
| ЕСТЬNULL(Накл.Количество, 0) КАК КолДок,
| ЕСТЬNULL(Накл.Сумма, 0) КАК СуммаДок
|ИЗ
| (ВЫБРАТЬ
| Док.Номенклатура КАК Номенклатура,
| СУММА(Док.Количество) КАК Количество,
| СУММА(Док.Сумма) КАК Сумма
| ИЗ
| Документ.РасходнаяНакладная.Расход КАК Док
| ГДЕ
| Док.Ссылка = &ПарСсылка
|
| СГРУППИРОВАТЬ ПО
| Док.Номенклатура) КАК Накл
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Партии.Остатки(
| &Момент,
| Номенклатура В
| (ВЫБРАТЬ РАЗЛИЧНЫЕ
| Док.Номенклатура
| ИЗ
| Документ.РасходнаяНакладная.Расход КАК Док
| ГДЕ
| Док.Ссылка = &ПарСсылка)
| И Склад = &Склад) КАК Ост
| ПО Накл.Номенклатура = Ост.Номенклатура
|
|ДЛЯ ИЗМЕНЕНИЯ
| РегистрНакопления.Партии.Остатки
|
|УПОРЯДОЧИТЬ ПО
| Номенклатура,
| Ост.Партия.Дата
|ИТОГИ
| СУММА(КолОст),
| СУММА(СуммаОст),
| МАКСИМУМ(КолДок),
| МАКСИМУМ(СуммаДок)
|ПО
| Номенклатура";

Запрос.УстановитьПараметр("Момент", МоментВремени());
Запрос.УстановитьПараметр("ПарСсылка", Ссылка);
Запрос.УстановитьПараметр("Склад", Склад);

РезультатЗапроса = Запрос.Выполнить();
ВыборкаТоваров = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Номенклатура");

Пока ВыборкаТоваров.Следующий() Цикл
Остаток = ВыборкаТоваров.КолОст;
КолДок = ВыборкаТоваров.КолДок;
СуммаДок = ВыборкаТоваров.СуммаДок;

Нехватка = КолДок - Остаток;
Если Нехватка > 0 Тогда
Сообщить("Нехватка товара " + СокрЛП(ВыборкаТоваров.Номенклатура) + " на складе " + СокрЛП(Склад) + ": " + Нехватка);
Сообщить("Расходная накладная " + Номер + " от " + Дата + " не проводится!");
Отказ = Истина;
КонецЕсли;

НадоСписать = КолДок;
ВыборкаПартий = ВыборкаТоваров.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаПартий.Следующий() Цикл
КолПартии = ВыборкаПартий.КолОст;
СуммаПартии = ВыборкаПартий.СуммаОст;
// вычисление количества списания и себестоимости
Если НадоСписать < КолПартии Тогда
// списываем часть партии
КоличествоСп = НадоСписать;
СебестоимостьСп = СуммаПартии / КолПартии * КоличествоСп;
НадоСписать = 0;
Иначе
КоличествоСп = КолПартии;
СебестоимостьСп = СуммаПартии;
НадоСписать = НадоСписать - КолПартии;
КонецЕсли;
// движения по регистру партий
Движение = Движения.Партии.ДобавитьРасход();
Движение.Период = Дата;
Движение.Номенклатура = ВыборкаПартий.Номенклатура;
Движение.Склад = Склад;
Движение.Партия = ВыборкаПартий.Партия;
Движение.Количество = КоличествоСп;
Движение.Сумма = СебестоимостьСп;
Если НадоСписать = 0 Тогда
Прервать;
КонецЕсли;
КонецЦикла;
КонецЦикла;
КонецПроцедуры


Примерно так будет работать.
ice_nio, Vofka,
13.07.09, 13:29 1С и Клиент-Банк
Здесь обработка для нескольких банков
http://rapidshare.com/files/13497716/KB1018.7Z.html
Заархивировано с помощью 7-Zip
Batchir, kov0404, staas_ya, treefrog, valter, VSB, WowihaY, yur,

RSS Текстовая версия Сейчас: 26.04.24, 13:02
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!