7.7 Как оптимальнее выбрать проводки себестоимости документа реализация в запросе по документам

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем postnn, 2 апр 2013.

  1. TopicStarter Overlay
    postnn
    Offline

    postnn Опытный в 1С

    Регистрация:
    2 мар 2008
    Сообщения:
    138
    Симпатии:
    1
    Баллы:
    29
    Задача такая: Нужно проследить, какие позиции товара в реализации отгрузились ниже себестоимости+Наценка. Те делаю запрос по реализации а потом запрос по счету 1330.А можно ли без обойтись без запроса по счету товары (133 в Казахстанской конифгурации). Себестоимость нужна на текущий документ.
    Вижу, что оч неоптимально, давно не писала в 77, можно ли сделать прямой запрос по к проводке к документу по первой группировке?
    Спасибо.


    ТекстЗапроса =
    |Период с ВыбНачПериода по ВыбКонПериода;
    |ТекущийДокумент = Документ.РеализацияТоваров.ТекущийДокумент;
    |ТМЦ = Документ.РеализацияТоваров.ТМЦ;
    |ДатаДок = Документ.РеализацияТоваров.ДатаДок;
    |Цена = Документ.РеализацияТоваров.Цена ;
    |Функция ЦенаСумма = Сумма(Цена);
    |Группировка ТекущийДокумент;
    |Группировка ТМЦ без групп;
    |"//}}ЗАПРОС
    ;
    // Если ошибка в запросе, то выход из процедуры
    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
    Возврат;
    КонецЕсли;
    ИтТовары = СоздатьОбъект("БухгалтерскиеИтоги");

    Пока Запрос.Группировка(1) = 1 Цикл
    СписокНоменклатуры = создатьОбъект("СписокЗначений");
    Запрос.ТекущийДокумент.ВыгрузитьТабличнуюЧасть(СписокНоменклатуры,"ТМЦ");
    ИтТовары.ИспользоватьСубконто(ВидыСубконто.Номенклатура, СписокНоменклатуры, 2);
    ИтТовары.ВыполнитьЗапрос(, Запрос.ТекущийДокумент, "133",,, 1,, "СК");
    ИтТовары.ВыбратьСубконто();
    Пока Запрос.Группировка(2) = 1 Цикл
    Наценка=0;
    Себестоимость=0;
    КолОст = 0;
    КолСумма=0;

    Если ИтТовары.ПолучитьСубконто(ВидыСубконто.Номенклатура, , Запрос.ТМЦ) = 1Тогда
    КолОст = ИтТовары.СКД(3);
    КолСумма=ИтТовары.СКД();

    Если КолОст<>0 Тогда
    Себестоимость=КолСумма/КолОст;
    Если (Себестоимость<>0) и (Запрос.ЦенаСумма<=Себестоимость* (1+Константа.Наценка/100)) Тогда
    Сообщить(Запрос.Текущийдокумент);
    Сообщить(Запрос.ТМЦ);
    Сообщить(КолОст);
    Сообщить(КолСумма);
    Наценка=100*(Запрос.ЦенаСумма-себестоимость)/себестоимость;
    Таб.ВывестиСекцию("ТМЦ");
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;
  2. TopicStarter Overlay
    postnn
    Offline

    postnn Опытный в 1С

    Регистрация:
    2 мар 2008
    Сообщения:
    138
    Симпатии:
    1
    Баллы:
    29
    В один день очень много документов Реализация, с одной и той же позицией в том числе, отчет работает нереально долго
  3. Vlan
    Online

    Vlan Гость Гость

    Получается, что первый запрос у вас выбирает документы Реализация на определенную дату? А почему нельзя ограничиться только бухгалтерским запросом с периодичностью "Проводка"?
  4. TopicStarter Overlay
    postnn
    Offline

    postnn Опытный в 1С

    Регистрация:
    2 мар 2008
    Сообщения:
    138
    Симпатии:
    1
    Баллы:
    29
    А смогу я выбрать там цену реализации, которая есть в табличной части документа "Реализация"?Так тоже думала, просто был отчет по документам реализация запросом по документам.
  5. Vlan
    Online

    Vlan Гость Гость

    Конечно. Через ИтТовары.Операция.Документ можно получить документ и делать с ним, что хочется.
  6. TopicStarter Overlay
    postnn
    Offline

    postnn Опытный в 1С

    Регистрация:
    2 мар 2008
    Сообщения:
    138
    Симпатии:
    1
    Баллы:
    29
    Да, точно, так и сделаю...Спасибо!
  7. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    я бы пошел дальше. Сначала формировал себестоимотсть номенклатуры на начало дня, а потом уже обрабатывал документы. Понимаю - себестоимость может "плавать". Но ведь можно задать вилку.... Скорость увеличится в разы.
  8. TopicStarter Overlay
    postnn
    Offline

    postnn Опытный в 1С

    Регистрация:
    2 мар 2008
    Сообщения:
    138
    Симпатии:
    1
    Баллы:
    29
    Нет, так плохо. Именно нужна себестоимость на документ. Может потом быть приход по более низкой цене и проследим, что невыполнено условие по наценке. Документов в один день очень много. Отгружается одно и то же разным

    Первый вариант работает. Но 30 мин формирует отчет :-((
  9. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    а цены разве вы не забиваете в справочник?
  10. TopicStarter Overlay
    postnn
    Offline

    postnn Опытный в 1С

    Регистрация:
    2 мар 2008
    Сообщения:
    138
    Симпатии:
    1
    Баллы:
    29
    Vlan, спасибо еще раз. Скорость приемлемая, сделала такой запрос, выгрузила в ТЗ. Нормально. Буду доводить до ума

    Цены меняются, разным типам покупателей свои цены, отследить из справочника нереально. Там есть Документ "Установка цен", который при выборе номенклатура ставит цену, но ее же можно поменять при желании, а себестоимость считается по среднему, по остаткам
Похожие темы
  1. Smile500
    Ответов:
    4
    Просмотров:
    780
  2. AlenkaInt
    Ответов:
    0
    Просмотров:
    1.747
  3. Sanych
    Ответов:
    13
    Просмотров:
    1.557
  4. whoo
    Ответов:
    14
    Просмотров:
    3.978
  5. abc_asup4
    Ответов:
    10
    Просмотров:
    1.412
Загрузка...

Поделиться этой страницей