Новости для бухгалтера, бухучет, налогообложение, отчетность, ФСБУ, прослеживаемость и маркировка, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[1С:Бухгалтерия 8]

Вопрос с запросом

Денис (САМАРА)
читатель
офлайн
Дата регистрации: 09.04.2008
Сообщений: 8351
Пост №21
 
19.01.2012 10:13

> все данные кинуть в SQL server 2003 и считать в нем через SQL запросы (благо ADO есть)<br> <br>Дурь.<br> <br>> ...система начинает превращаться в черный ящик<br> <br>Прежде чем лезть в систему нужно учиться.

Vasiliy_b
читатель
офлайн
Дата регистрации: 19.02.2008
Пост №22
 
19.01.2012 11:40

Условия нужно накладываnm на виртуальную таблицу<br> <br> <br><pre>РегистрБухгалтерии.Хозрасчетный.Остатки(&Период,&Счет , Субконто1 = &Номенклатура И Субконто2 = &Склад , )<br><br></pre><br><br>Как-то так.... но не проверял.<br>и счет можно не передавать писать в самом запросе чтото вроде ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ТоварыНаСкладах)

Dsident
читатель
офлайн
Дата регистрации: 14.09.2010
Сообщений: 195
Пост №23
 
20.01.2012 16:23

"Я сделал так:<br><pre> Выборка = Документы.ОтчетПроизводстваЗаСмену.Выбрать(НачПериода,КонПериода);<br> <br> Пока Выборка.Следующий() Цикл<br>       Документ = Выборка.ПолучитьОбъект();<br>       Попытка <br>            Документ.Записать(РежимЗаписиДокумента.Проведение);<br>       Исключение<br>            ЗапросОстатки = Новый Запрос;<br>            ЗапросОстатки.Текст = <br>            "ВЫБРАТЬ<br>            | ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстаток КАК Количество,<br>            | ХозрасчетныйОстаткиИОбороты.Субконто1.Ссылка КАК Номенклатура,<br>            | ХозрасчетныйОстаткиИОбороты.Субконто2.Ссылка КАК Склад<br>            |ИЗ<br>            | РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачПериода, &КонПериода, Период, , Счет В ИЕРАРХИИ (&Счет), , ) КАК ХозрасчетныйОстаткиИОбороты<br>            |       ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ<br>            |            Склады.Ссылка КАК Ссылка<br>            |       ИЗ<br>            |            Справочник.Склады КАК Склады<br>            |       ГДЕ<br>            |            Склады.ПометкаУдаления = ЛОЖЬ<br>            |            И Склады.Ссылка <> &ВыборкаСклад) КАК Склады<br>            |       ПО ХозрасчетныйОстаткиИОбороты.Субконто2.Ссылка = Склады.Ссылка<br>            |       ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ<br>            |            ОтчетПроизводстваЗаСмену.Материалы.(<br>            |             Номенклатура КАК Номенклатура<br>            |            ) КАК Материалы<br>            |       ИЗ<br>            |            Документ.ОтчетПроизводстваЗаСмену КАК ОтчетПроизводстваЗаСмену<br>            |       ГДЕ<br>            |            ОтчетПроизводстваЗаСмену.Ссылка = &Ссылка<br>            |            И ОтчетПроизводстваЗаСмену.Проведен = ИСТИНА) КАК ОтчетПроизводства<br>            |       ПО ХозрасчетныйОстаткиИОбороты.Субконто1.Ссылка = ОтчетПроизводства.Материалы.Номенклатура.Ссылка<br>            |<br>            |УПОРЯДОЧИТЬ ПО<br>            | Номенклатура,<br>            | Количество УБЫВ";<br>            ЗапросОстатки.УстановитьПараметр("НачПериода", Выборка.Дата-1);<br>            ЗапросОстатки.УстановитьПараметр("конПериода", Выборка.Дата-1);<br>            ЗапросОстатки.УстановитьПараметр("Ссылка", Выборка.Ссылка);<br>            ЗапросОстатки.УстановитьПараметр("Счет", ПланыСчетов.Хозрасчетный.НайтиПоКоду("41.01"));<br>            ЗапросОстатки.УстановитьПараметр("ВыборкаСклад", Выборка.Склад);<br>            <br>            ТЗ = ЗапросОстатки.Выполнить().Выгрузить();<br></pre><br><br><br>Суть этого в следующем: выбираем список документов за период. Если документ при проведении выдал ошибку, то идем в запрос. Для каждой номенклатуры в ТЧ документа находим именно отрицательные остатки - 99% документ не перепровелся именно поэтому, а далее дело техники.<br>Все равно запрос получился в цикле, потому что нужно перебрать все документы за выбранный период, и в каждом документе свою ТЧ, и по результатам мы получаем количество, которого на складе в момент проведения нет. А значит, нужно искать на другом складе, чтобы оборотка была красивой, а не сплошь красной. Вторым запросом для номенклатуры, количества которой не хватает на складе, мы ищем альтернативу на других складах, и перемещаем её. В результате документ проводицца красиво.<br>Наверно, объяснил сумбурно - я уже полтора суток на ногах, и думать, честно говоря, лень.<br>Однако, по сравнению с первым предложенным вариантом этот запрос работает раз в десять быстрееэ"

Prikum
активный пользователь
офлайн
Дата регистрации: 18.02.2002
Сообщений: 20953
Пост №24
 
20.01.2012 18:25

> по сравнению с первым предложенным вариантом этот запрос работает раз в десять быстрееэ<br>его можно сделать еще быстрее, если вынести склады и документы во временные таблицы

Показывать по 10 20 40 сообщений

Читают тему:

1 гостей
Быстрый переход
Для технических специалистов
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • МАРКИРОВКА
  • ЕГАИС
  • Учет, налогообложение, автоматизация