Мне нужно выбрать сумму и колворасход из расходной накладной без возврата поставщику и из приходной без возврата покупателя, так как форма док едина. Я уже не знаю, что делать. Вариант указать Док.ВидОперации, но что-то по незнанию не получается. Подскажите пожалуйста.
Группа: Пользователи
Сообщений: 108
Спасибо сказали: 2 раз
Рейтинг: 0
Все. Исключила не нужные документы.(Сумма(Оборот) когда ((Оборот>0) и (ТекДокумент.Вид() = ""РасходнаяНакладная"")или(Оборот<0) и (ТекДокумент.Вид() = ""ПриходнаяНакладная"")) Единственное хотелось бы чтобы быстрее формировался. Можно ли что-то подправить?
А попробуйте вставить условие в запрос, только по ПН и РН, тогда другие доки вообще не попадут в запрос и не нужно будет условие в функции, что вы добавили. Ну и по Виду операции, тоже можно добавить условие, чтобы возвраты не попадали в запрос вообще.
Группа: Пользователи
Сообщений: 108
Спасибо сказали: 2 раз
Рейтинг: 0
Если я не укажу Оборот>0 или Оборот<0 тогда вытягиваются возвраты. Вы имеете в виду |Оборот = Регистр.ПартииТоваров.Оборот; исправить? Если вам не тяжело можете привести пример. igmig65 @ Сегодня, 7:03
,
Группа: Местный
Сообщений: 299
Спасибо сказали: 98 раз
Рейтинг: 99.1
Цитата(igmig65 @ 12.11.16, 7:03)
А попробуйте вставить условие в запрос, только по ПН и РН, тогда другие доки вообще не попадут в запрос и не нужно будет условие в функции
//Добавьте условие |Условие((ТекДокумент.Вид() = ""РасходнаяНакладная"") или (ТекДокумент.Вид() = ""ПриходнаяНакладная"")); //Измените функцию: |Функция Сумма = Сумма(Оборот) когда (Оборот<>0);
Цитата(igmig65 @ 12.11.16, 7:03)
Ну и по Виду операции, тоже можно добавить условие, чтобы возвраты не попадали в запрос вообще.
//Перед формированием текста запроса добавьте в список нужные коды операций, исключите те которые ниже: СписКодыОпераций=СоздатьОбъект("СписокЗначений"); СписКодыОпераций.ДобавитьЗначение(ПродажаКупленногоТовара); СписКодыОпераций.ДобавитьЗначение(ПродажаКупленногоПереданногоТовара); СписКодыОпераций.ДобавитьЗначение(РозничнаяПродажаКупленногоТовара); СписКодыОпераций.ДобавитьЗначение(ВозвратТовараОтПокупателя); СписКодыОпераций.ДобавитьЗначение(ВозвратКупленногоПереданногоТовара); СписКодыОпераций.ДобавитьЗначение(ВозвратРозничныйКупленногоТовара); СписКодыОпераций.ДобавитьЗначение(ПродажаПринятогоТовара); СписКодыОпераций.ДобавитьЗначение(ПродажаПринятогоПереданногоТовара); СписКодыОпераций.ДобавитьЗначение(РозничнаяПродажаПринятогоТовара); СписКодыОпераций.ДобавитьЗначение(ВозвратПринятогоТовараОтПокупателя); СписКодыОпераций.ДобавитьЗначение(ВозвратПринятогоПереданногоТовара); СписКодыОпераций.ДобавитьЗначение(ПродажаУслуги); СписКодыОпераций.ДобавитьЗначение(СторноПродажаУслуги);
//Добавьте переменную; |КодОперации=Регистр.ПартииТоваров.КодОперации; //Также условие |Условие (КодОперации В СписКодыОпераций);
От себя повторяю еще раз: У Вас в Регистр.ПартииТоваров.Фирма пусто ! Используйте Фирма = Регистр.ПартииТоваров.ТекущийДокумент.Фирма;
sava1 @ Сегодня, 16:43
,
Цитата(sava1 @ 12.11.16, 16:43)
в семерке выборка из регистров практически оптимальна
Могу согласиться но только частично, если Без итогов в 2-3 этажа то разница не очень ощутима, но вот если с отбором итогов и + многоэтажность - прямые выиграют.
То, что для одного человека константа, для другого - переменная. (Алан.Дж.Перлис)
Группа: Пользователи
Сообщений: 162
Из: Украина
Спасибо сказали: 39 раз
Рейтинг: 36
sava1 @ Сегодня, 17:51
, А это как запрос напишите. Насчет оптимальной выборки из регистров..нуу.. доводилось переписывать черные запросы к регистрам на прямые. И всегда работало быстрее, - и чем больший период попадал в выборку, тем существеннее было различие по времени
Группа: Пользователи
Сообщений: 108
Спасибо сказали: 2 раз
Рейтинг: 0
1.Регистр.ПартииТоваров.Фирма пусто ! Используйте Фирма = Регистр.ПартииТоваров.ТекущийДокумент.Фирма если изменить вытягивает не понятные данные 2.Добавила через КодОперации все отлично работает быстрее прежнего приблизительно на 00:00;17, но Контрагент нужно указать через нужные документы иначе суммы не верны.
Группа: Местный
Сообщений: 299
Спасибо сказали: 98 раз
Рейтинг: 99.1
Цитата(inna.innainna84 @ 13.11.16, 22:24)
Фирма если изменить вытягивает не понятные данные
Данные не могут быть разными или непонятными. При запросе Фирма = Регистр.ПартииТоваров.Фирма; и Фирма = Регистр.ПартииТоваров.ТекущийДокумент.Фирма; возвращается одно и тоже. В первом случае лезем в регистр, а во втором в документ который в этот регистр сделал запись. Сами посмотрите в движения документа по регистру (правая кнопка мыши на проведенный ПН или РН, движения документа, партии товаров, Ок), в измерение фирма пусто или записана фирма ? Если записана, значит смотрите в регистр, а если все же пусто тогда в документ. У Вас реквизит "Фирма" общий реквизит документов.
То, что для одного человека константа, для другого - переменная. (Алан.Дж.Перлис)
Группа: Пользователи
Сообщений: 27
Спасибо сказали: 1 раз
Рейтинг: 0
inna.innainna84 Извините, что влезаю в Ваше обсуждение. Чтобы Вы правильно обращались с данными регистров, нужно знать, что в торговле, при включенном механизме фин. учета, в регистрах, ведущих суммовой учет (в т.ч. и регистре "Партии товаров"), на каждое движение формируются две записи: одна со значением "Фирма" (в регистре) равном зтому значению в документе и в валюте фин. учета; вторая со значением "Фирма" равным Пустому значению справочника "Фирмы" и в валюте управленческого учета. Какими бы ни были Ваши требования к отчету, во внутреннюю переменную запроса "Фирма" нужно выбирать данные из регистра (а не документа - документ же в обеих случаях один и тот же) и, естественно указывать
|Условие (Фирма = ВыбФирма);
, где "ВыбФирма" или конкретная фирма или пустое значение типа "Справочник.Фирмы" иначе будет или задвоение, если фин. и упр. учеты в одной валюте, или вообще каша - если в разных.
Группа: Пользователи
Сообщений: 108
Спасибо сказали: 2 раз
Рейтинг: 0
Serg_XX @ 14.11.16, 15:09
, Sharzem @ 14.11.16, 0:25
, Я посмотрела, что пишет в регистры партии товара, 1)записи дублирует фирма-пусто и фирма с данными 2)контрагент и поставщик сюда записывает только поставщика который поставлял проданный товар в этой накладной. он не записывает контрагента в этом документе. Вот почему у меня не получалось правильно сформировать данные Срабатывало только так: |Контрагент= Регистр.ПартииТоваров.ТекущийДокумент.РасходнаяНакладная.Контрагент,Регистр.ПартииТоваров.ТекущийДокумент.ПриходнаяНакладная.Контрагент; 3)Если уж так придираться мне вообще не стоило брать из регистра партии данные для отчета, Возникла идея Дописать и откоректировать Регистр ОборотПродаж 1) в расходной, поставить условие , что вид документа=0 тогда данные из возврата поставщику сюда не подтянутся. 2) в приходной, поставить условие , что вид документа=1 тогда данные из возврата покупателя сюда не подтянутся. 3)Провести все документы за нужный период.
Группа: Местный
Сообщений: 299
Спасибо сказали: 98 раз
Рейтинг: 99.1
inna.innainna84 @ Сегодня, 1:52
, Инна, не лезьте туда, плиз... Я бы Вам порекомендовал это сделать еще в предыдущей теме, но там все настолько запущено, что ппц. Используйте то что имеете. Не лезьте в наследие авантюризма по регистру "Обороты продаж" дабы не породить еще больше проблем. Пройдет время, изучите конфигурацию, наберетесь опыта и только тогда будете корректировать, Вам пока еще рановато. По добавлению данных в регистр Вам нужно заключение, это смогут сделать только специалисты (по результатам полного анализа), все остальное породит только новые грабли.
ЗЫ: Мы с Вами когда-то по этому поводу уже общались. Форум Вам реально в Вашей ситуации не поможет.
То, что для одного человека константа, для другого - переменная. (Алан.Дж.Перлис)
Группа: Пользователи
Сообщений: 108
Спасибо сказали: 2 раз
Рейтинг: 0
Да я согласна с вами опыта у меня нет. Коректировать регистр мне поможет знакомый специалист по 1с. (Правда к нему очень трудно достучатся). Все что я делаю я сначала тестирую на копии. Спасибо огромное вам за поучения. Sharzem @ Сегодня, 15:41
,
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!