Форум программистов, компьютерный форум, киберфорум
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.53/399: Рейтинг темы: голосов - 399, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 02.03.2007
Сообщений: 272

1с8.1. Цена последнего поступления номенклатуры.

05.10.2010, 12:01. Показов 75603. Ответов 23
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как получить по всей номенклатуре последние поступления?
Собственно сложность в том, чтобы получить все одним запросом. На выходе хотелось бы иметь таблицу формата:

Номенклатура - Последнее поступление от такого то числа - цена поступления
Номенклатура2 - Последнее поступление от такого то числа (2) - цена поступления2 ну и т.д.

Как по конкретной номенклатуре получить последний приход - знаю, а вот как сразу по всем - не понимаю.
Буду рад, если направите в нужное русло.

Конфигурация : Бухгалтерия. версию не называю, это не принципиально.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.10.2010, 12:01
Ответы с готовыми решениями:

Цена номенклатуры
Скажите пожалуйста у нас 1с Предприниматель, я создала документ накладная, идентичный документу реализация, база работает через подбор, т.е...

Не та цена номенклатуры в Торговля + склад 9.2
Не могу понять почему, но почемуто так происходит.... При оформлении Чека ККМ, после подбора, в табличной части появляется товар не с...

Вывести последние поступления номенклатуры
Конфигурация ут10.3. Прошу помочь, внешний отчет, не пойму как отобразить именно последние данные по номенклатуре, то есть выбираем...

23
0 / 0 / 0
Регистрация: 24.12.2008
Сообщений: 1,399
05.10.2010, 12:18
такой вариант не подойдет?
Правда, если в одну секунду два поступления одной номенклатуры... может быть не очень. Но, думаю, не бывает такого.
0
0 / 0 / 0
Регистрация: 02.03.2007
Сообщений: 272
05.10.2010, 14:36
Цитата Сообщение от unknown181538
такой вариант не подойдет?
Идея понятна.Правда, я надеялся, что не придется делать нечто напоминающее: " Сундук - в утке, утка - в шлюпке, шлюпка - в бобре, а бобр - в Магадане".
0
0 / 0 / 0
Регистрация: 24.12.2008
Сообщений: 1,399
05.10.2010, 15:44
Я такие задачи всегда решал вне запроса.
Не вполне понял как будет работать МАКСИМУМ(Документ.Ссылка). Боюсь, что упорядочит по представлению документа - кажется, так происходит по умолчанию при сортировки ТЗ, а доп параметры в запросе не задашь.
0
0 / 0 / 0
Регистрация: 02.03.2007
Сообщений: 272
05.10.2010, 21:03
Видимо "дешевле" будет сделать через запрос в цикле, хотя и ох как не охото...Отложу до более благоприятного времени).
0
0 / 0 / 0
Регистрация: 24.12.2008
Сообщений: 1,399
06.10.2010, 13:35
Как раз с этим столкнулся.
Вот еще ссылка http://devtrainingforum.v8.1c.... ?id=541552
0
0 / 0 / 0
Регистрация: 02.03.2007
Сообщений: 272
06.10.2010, 14:39
Агамс, это уже смотрел).
0
0 / 0 / 0
Регистрация: 23.04.2010
Сообщений: 553
07.10.2010, 15:32
Цитата Сообщение от tanat
Конфигурация : Бухгалтерия. версию не называю, это не принципиально.
Мне кажется принципиально 7.7 или 8.х.

Раз были ссылки на v8, то предположу, что 8-ка у вас.

Если


Цитата Сообщение от tanat
Как по конкретной номенклатуре получить последний приход - знаю, а вот как сразу по всем - не понимаю
тогда

вы сможете в свой механизм (предполагаю запрос) вставить условие

Код ( (Unknown Language)):
Номенклатура В (&МассивНоменклатуры)
и будет счастье, и никаких


Цитата Сообщение от tanat
сделать через запрос в цикле
покайтесь.
0
0 / 0 / 0
Регистрация: 24.12.2008
Сообщений: 1,399
08.10.2010, 09:25
Цитата Сообщение от Darlock
вы сможете в свой механизм (предполагаю запрос) вставить условие
Ты не понял.
Проблема не в том, чтобы отобрать по нескольким, а в том, чтобы получить по одному движению на каждую номенклатуру. Причем движение должно быть последним.
0
0 / 0 / 0
Регистрация: 02.03.2007
Сообщений: 272
10.10.2010, 10:03
Давайте по порядку):
1) Платформа указана в названии темы).
2)Верно подметил unknown181538, как по отдельной номенклатуре получить - сложности нет. Сложность в том, что хотелось бы получить все последние приходы по номенклатуре. Всего номенклатуры порядка 43 000 позиций. База ведется с 2008 года, Документооборот по приходам в месяц - бывает под тысячу. В документе - по от 20 до 500 строк). Так что Задача не только в том, чтобы построить запрос, а в том, чтобы он хотя бы отработал).
3)Каюсь, но в цикле так в данном случае оказалось быстрее. Понимаю, что запрос в цикле - это как руки из ж..пы, вот и пытаюсь выправить свои руки с помощью Вас, дорогие форумчане. В свою защиту скажу, что обработка разовая, не для клиента-за-денежку, а для работодателя-за-зарплату.
0
0 / 0 / 0
Регистрация: 23.04.2010
Сообщений: 553
10.10.2010, 17:46
1) не обратил внимания;
2) если это бухгалтерия, что мешает обратиться к регистру с партиями, отсортировать по возрастанию и получить регистратор?
0
0 / 0 / 0
Регистрация: 24.12.2008
Сообщений: 1,399
11.10.2010, 02:54
Цитата Сообщение от Darlock
если это бухгалтерия, что мешает обратиться к регистру с партиями, отсортировать по возрастанию и получить регистратор?
В запросе или в ТЗ?
Собственно решения-то приведены выше. Просто они не очень просты и быстродейственны.
0
0 / 0 / 0
Регистрация: 23.04.2010
Сообщений: 553
11.10.2010, 15:22
Цитата Сообщение от unknown181538
В запросе или в ТЗ?
Собственно решения-то приведены выше. Просто они не очень просты и быстродейственны.
В запросе, незачем напрягать лишний раз платформу обрабатывая и сортируя ТЗ.

Алгоритм прост:
1) запрос к регистру партий по своей номенклатуре (все условия) получаем регистратор (можно пакетом, можно вложенным запросом)
2) запрос табличным частям документов поступлений товаров с левым соединением с регистром по регистратору

отработает настолько быстро, насколько много будет условий на вирт.таблицу регистра
0
0 / 0 / 0
Регистрация: 24.12.2008
Сообщений: 1,399
11.10.2010, 15:38
Итоговая таблица будет содержать несколько строк по каждой номенклатуре, т.к. партий много по каждой номенклатуре.
0
0 / 0 / 0
Регистрация: 23.04.2010
Сообщений: 553
12.10.2010, 14:35
Приблизительно как-то так:


Код ( (Unknown Language)):
ВЫБРАТЬ
МАКСИМУМ(ПартииТоваровКомпанииОстатки.Па ртия) КАК Партия,
ПартииТоваровКомпанииОстатки.Номенклатур а
ПОМЕСТИТЬ ВТПартийОстатков
ИЗ
РегистрНакопления.ПартииТоваровКомпании. Остатки(&ДатаОстатков, Номенклатура В (&МассивНоменклатуры)) КАК ПартииТоваровКомпанииОстатки

СГРУППИРОВАТЬ ПО
ПартииТоваровКомпанииОстатки.Номенклатур а
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ВТПартийОстатков.Номенклатура,
ПоступлениеТоваровТовары.Цена
ИЗ
ВТПартийОстатков КАК ВТПартийОстатков
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПоступлениеТоваров.Товары КАК ПоступлениеТоваровТовары
ПО ВТПартийОстатков.Партия = ПоступлениеТоваровТовары.Ссылка
И ВТПартийОстатков.Номенклатура = ПоступлениеТоваровТовары.Номенклатура
0
0 / 0 / 0
Регистрация: 24.12.2008
Сообщений: 1,399
12.10.2010, 15:00
Неправильно.
Даже провел эксперимент. Попробуй запрос


Код ( (Unknown Language)):
ВЫБРАТЬ
МАКСИМУМ(РеализацияТоваровУслуг.Ссылка) КАК Ссылка
ИЗ
Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
Возвращает документ не последний по периоду, а с самым большим номером (сравнение идет по представлению).
Ответы я привел. И, судя по всему, у tanat они работают медленно.
0
0 / 0 / 0
Регистрация: 15.02.2008
Сообщений: 173
13.10.2010, 00:07
Цитата Сообщение от unknown181538
Неправильно.
Даже провел эксперимент. Попробуй запрос
опять не совсем верно : партия - это не документ а справочник. сортироваться будет скорее всего по коду. а так как пользователь редко меняет коды справочников - то в принципе в большинстве случаев будет работать, так как у последних партий самые большие коды. хотя это очень косвенно. тут надо использовать срез последних в разрезе документов.
0
0 / 0 / 0
Регистрация: 24.12.2008
Сообщений: 1,399
13.10.2010, 18:32
Цитата Сообщение от evgenyatam
опять не совсем верно : партия - это не документ а справочник. сортироваться будет скорее всего по коду. а так как пользователь редко меняет коды справочников - то в принципе в большинстве случаев будет работать, так как у последних партий самые большие коды. хотя это очень косвенно. тут надо использовать срез последних в разрезе документов.
С чего вдруг партия справочник? Например, в УТ это документ. В большинстве типовых конфигураций 8.Х, кажется тоже.
Как взять срез последних, если данные в регистре накопления?
0
0 / 0 / 0
Регистрация: 02.03.2007
Сообщений: 272
14.10.2010, 09:53
Кстати, если я не путаю,
РегистрНакопления.ПартииТоваровКомпании. Остатки(&ДатаОстатков, Номенклатура В (&МассивНоменклатуры)) выведет ведь только записи, по которым есть остатки на конечную дату. Ну да это все не принципиально, принцип то понятен). Как напишу - выложу на общий суд, тогда и продолжим споры).


Да, и еще: МАКСИМУМ(ССылка) использовать нельзя, если и использовать, то только МАКСИМУМ от даты или момента времени.
0
0 / 0 / 0
Регистрация: 23.04.2010
Сообщений: 553
14.10.2010, 13:27
Цитата Сообщение от tanat
Кстати, если я не путаю,
РегистрНакопления.ПартииТоваровКомпании. Остатки(&ДатаОстатков, Номенклатура В (&МассивНоменклатуры)) выведет ведь только записи, по которым есть остатки на конечную дату. Ну да это все не принципиально, принцип то понятен). Как напишу - выложу на общий суд, тогда и продолжим споры).


Да, и еще: МАКСИМУМ(ССылка) использовать нельзя, если и использовать, то только МАКСИМУМ от даты или момента времени.
В 8 можно. я использовал подобную конструкцию (максимум по ссылке) для получения последнего документа из выборки.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.10.2010, 13:27
Помогаю со студенческими работами здесь

Цена реализации в документах поступления
Всем привет. Искал подобную тему по форуму - не нашел. Вопрос вот в чем: Есть конфигурация "1С предприятие 8.3 Управление торговлей...

Какой тип номенклатуры можно указать для вида номенклатуры?
сдавал экзамен проф УТ 8, попался вопрос: какой тип номенклатуры можно указать для вида номенклатуры? выбрал товар и услуга, результат...

БП 3: как получить счета номенклатуры из регистра "счет учета номенклатуры"?
Добрый день Подскажите как получить счета номенклатуры из регистра "счет учета номенклатуры" нашел функцию в общем модуле...

Цена номенклатуры из регистра сведений
Необходимо в справочнике при выборе номенклатуры автоматически поставить цену. Написала запрос, принимает, но не работает( В чем ошибка? ...

Событие поступления заказа в базу данных. Аргументы события включают в себя номер заказа и дату поступления
Реализовать событие с помощью делегата. Реализация - выдача в любом виде (консоль, MessageBox, Label и.т.д.) указанных параметров. Делегат...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru