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

Хранилище

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

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



> Ведение учета в разрезе складов          
meverikxp Подменю пользователя
сообщение 05.07.11, 8:42
Сообщение #1

Оратор
Иконка группы
Группа: Местный
Сообщений: 334
Из: Ровно
Спасибо сказали: 10 раз
Рейтинг: 0

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


Signature
Самая нелюбимая пословица сапёров: одна нога здесь, другая там...

Vofka Подменю пользователя
сообщение 05.07.11, 8:47
Сообщение #2

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13948
Из: Киев
Спасибо сказали: 4514 раз
Рейтинг: 3635.6

Книги читать не хотим всётаки.

Спасибо сказали: meverikxp,

meverikxp Подменю пользователя
сообщение 05.07.11, 8:50
Сообщение #3

Оратор
Иконка группы
Группа: Местный
Сообщений: 334
Из: Ровно
Спасибо сказали: 10 раз
Рейтинг: 0

Цитата(Vofka @ 05.07.11, 9:47) *
Книги читать не хотим всётаки.

Да без проблем подскажите конкретно какую, что бы не лопатить весь итнет


Signature
Самая нелюбимая пословица сапёров: одна нога здесь, другая там...

logist Подменю пользователя
сообщение 05.07.11, 9:05
Сообщение #4

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

А Вам не кажется что ответ на вопрос уже есть в этой фразе:
Цитата(meverikxp @ 05.07.11, 8:42) *
но когда его нет на складе тогда и нет записи в регистре и не с чем сопоставить списываемое количество.

даже книжки читать не надо...


Signature
Личные бесплатные консультации не даю, для этого есть форум!

DartRomanius Подменю пользователя
сообщение 05.07.11, 9:06
Сообщение #5

Ветеран
Иконка группы
Группа: Местный
Сообщений: 824
Из: Запорожье
Спасибо сказали: 145 раз
Рейтинг: 0

Цитата(meverikxp @ 05.07.11, 9:42) *
Создаю тестовую Конфигурацию, и возникла проблема ведения учета по складам. Просто достать информацию по товаре ну и даже по складу можно, но когда его нет на складе тогда и нет записи в регистре и не с чем сопоставить списываемое количество. Подскажите методику написания конфигурации в разрезе складов. Спасибо


Смотрим регистр накопления.
Измерения: Склад, Номенклатура
Ресурсы: Количество

Уж не пойму даже в чем проблема то?


Signature
-----------------------------------------------------------------------------------
Единственный, интуитивно понятный интерфейс - мамкина сиська!
Всему остальному надо учиться! (с) Не знаю кто....

logist Подменю пользователя
сообщение 05.07.11, 9:10
Сообщение #6

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(meverikxp @ 05.07.11, 8:42) *
и не с чем сопоставить списываемое количество.

то что числа можно сравнивать с нулем, Вас в школе конечно же не учили?


Signature
Личные бесплатные консультации не даю, для этого есть форум!

meverikxp Подменю пользователя
сообщение 05.07.11, 11:37
Сообщение #7

Оратор
Иконка группы
Группа: Местный
Сообщений: 334
Из: Ровно
Спасибо сказали: 10 раз
Рейтинг: 0

Цитата(logist @ 05.07.11, 10:10) *
то что числа можно сравнивать с нулем, Вас в школе конечно же не учили?


Что бы не было глупых ситуация выложу код запроса:

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


Нужно сделать отбор по складу, когда добавляю
ГДЕ Склад = &Склад
Тогда если нет товара на складе он не попадает в запрос. А как сделать что бы был?


Signature
Самая нелюбимая пословица сапёров: одна нога здесь, другая там...

pablo Подменю пользователя
сообщение 05.07.11, 11:41
Сообщение #8

Старейшина
********
Группа: Команда (модераторы)
Сообщений: 1116
Из: Одесса-Луганск
Спасибо сказали: 192 раз
Рейтинг: 0

В Вашем запросе нет поля Склад. Поэтому прямого совета нет, кроме как накладывать условие при отборе складов, а не в итоговом запросе. Вероятно, имеет смысл вынести создание таблицы ТоварыВРозницеОстатки в отдельную часть пакетного запроса и при создании накладывать ограничение

Сообщение отредактировал pablo - 05.07.11, 11:44


Signature
Правильно поставленный вопрос содержит до 90% ответа.

meverikxp Подменю пользователя
сообщение 05.07.11, 11:59
Сообщение #9

Оратор
Иконка группы
Группа: Местный
Сообщений: 334
Из: Ровно
Спасибо сказали: 10 раз
Рейтинг: 0

Цитата(pablo @ 05.07.11, 12:41) *
В Вашем запросе нет поля Склад. Поэтому прямого совета нет, кроме как накладывать условие при отборе складов, а не в итоговом запросе. Вероятно, имеет смысл вынести создание таблицы ТоварыВРозницеОстатки в отдельную часть пакетного запроса и при создании накладывать ограничение


как мне посоветовали прочел несколько страниц книги и в запросе добавил:
 (ВЫБРАТЬ
                                                Т.Номенклатура
                                            ИЗ
                                                СЦТовары КАК Т)
                                        И Склад = &Склад) КАК ТоварыВРозницеОстатки


Сообщение отредактировал meverikxp - 05.07.11, 12:00


Signature
Самая нелюбимая пословица сапёров: одна нога здесь, другая там...

logist Подменю пользователя
сообщение 05.07.11, 12:02
Сообщение #10

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(meverikxp @ 05.07.11, 11:37) *
Тогда если нет товара на складе он не попадает в запрос. А как сделать что бы был?

А зачем он там нужен, если на нем нет этого товара?
Для того что бы списать товар со склада нужно сравнить кол-во документа с остатками на складе. Если в результате запроса по остаткам - этого кол-ва нет, то и списывать нечего...
Вам нужен запрос который в ТЗ поместит ТЧ документа, и результат запроса с остатками номенклатуры по заданным параметрам, а потом нужно обойти таблицу с вопросом:
Если Номенклатура.КолвоДокумента <= Номенклатура.ОстатокИзЗапроса Тогда Списать; Иначе Сообщить("Такого кол-ва нет, Сейчас на складе: "+Номенклатура.ОстатокИзЗапроса);


При выполнении запроса у вас в ТЗ один столбец "Номенклатура", соответственно когда будет выборка остатков там заполнятся только имеющиеся на указанном складе, тех которых не будет на остатке будет 0.
как-то так smile.gif


Signature
Личные бесплатные консультации не даю, для этого есть форум!

DartRomanius Подменю пользователя
сообщение 05.07.11, 12:04
Сообщение #11

Ветеран
Иконка группы
Группа: Местный
Сообщений: 824
Из: Запорожье
Спасибо сказали: 145 раз
Рейтинг: 0

Цитата(meverikxp @ 05.07.11, 12:59) *
как мне посоветовали прочел несколько страниц книги и в запросе добавил:
 (ВЫБРАТЬ
                                                Т.Номенклатура
                                            ИЗ
                                                СЦТовары КАК Т)
                                        И Склад = &Склад) КАК ТоварыВРозницеОстатки


Вы уж простите уважаемый, а "склад" у вас откуда берется?
Прежде чем вы его с чем то сравниваете.....


Signature
-----------------------------------------------------------------------------------
Единственный, интуитивно понятный интерфейс - мамкина сиська!
Всему остальному надо учиться! (с) Не знаю кто....

meverikxp Подменю пользователя
сообщение 05.07.11, 12:05
Сообщение #12

Оратор
Иконка группы
Группа: Местный
Сообщений: 334
Из: Ровно
Спасибо сказали: 10 раз
Рейтинг: 0

Цитата(logist @ 05.07.11, 13:02) *
А зачем он там нужен, если на нем нет этого товара?
Для того что бы списать товар со склада нужно сравнить кол-во документа с остатками на складе. Если в результате запроса по остаткам - этого кол-ва нет, то и списывать нечего...
Вам нужен запрос который в ТЗ поместит ТЧ документа, и результат запроса с остатками номенклатуры по заданным параметрам, а потом нужно обойти таблицу с вопросом:
Если Номенклатура.КолвоДокумента <= Номенклатура.ОстатокИзЗапроса Тогда Списать; Иначе Сообщить("Такого кол-ва нет, Сейчас на складе: "+Номенклатура.ОстатокИзЗапроса);

как-то так smile.gif


Результат запроса конечно я обработал уже в выборке, с отказами проведения и сообщениями пользователю, что нет такого товара.


Signature
Самая нелюбимая пословица сапёров: одна нога здесь, другая там...

pablo Подменю пользователя
сообщение 05.07.11, 12:10
Сообщение #13

Старейшина
********
Группа: Команда (модераторы)
Сообщений: 1116
Из: Одесса-Луганск
Спасибо сказали: 192 раз
Рейтинг: 0

Уважаемый, не видя структуры Вашего регистра
Цитата
РегистрНакопления.ТоварыВРознице
, нельзя подсказать, каким образом нужно написать Ваш запрос, чтобы он работал так, как Вам нужно. Поэтому Вы и слышите общие фразы.

Сообщение отредактировал pablo - 05.07.11, 12:11


Signature
Правильно поставленный вопрос содержит до 90% ответа.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

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