7.7 Учет серийных номеров во время продажи товара

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

  1. TopicStarter Overlay
    cplusmax
    Offline

    cplusmax Опытный в 1С

    Регистрация:
    7 сен 2010
    Сообщения:
    154
    Симпатии:
    2
    Баллы:
    29
    Добрый день.
    Подскажите пожалуйста, как лучше реализовать следующее:
    Требуется вести учет проданного товара в разрезе серийных номеров (по каждому документу реализации товар с какими именно серийными номерами был продан), для отслеживания по дате продажи сроков гарантии на проданный товар. Конфигурация Торговля + Склад редакция 9.2
    Пока на ум приходит следующее:
    Завести регистр остатков, где
    измерения
    "Номенклатура=Справочник.Номенклатура"
    "Серийник=Строка,Длина=40"
    ресурсы
    "Количество=Число,Длина=4"
    И документом реализация записывать в этот регистр сведения о проданной номенклатуре, серийных номерах и количестве…
  2. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Хм. Всегда до этого считал что серийный номер - вещь уникальная. Зачем там количество?
    Насчет регистра - считаю самое верное решение. Можно конечно сделать и подчиненный справочник. Но тут придется дописывать код для "очистки" при отмене проведения документа
  3. Хряк
    Offline

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    ну, если только для отчета о продаже, накуа регистр остатков?
  4. TopicStarter Overlay
    cplusmax
    Offline

    cplusmax Опытный в 1С

    Регистрация:
    7 сен 2010
    Сообщения:
    154
    Симпатии:
    2
    Баллы:
    29
    Просто больше ничего на ум не пришло... нужно же что то хранить в "Измерениях" регистра остатков :angry:
    А как считаете, такая структура регистра для данного случая подойдет?
  5. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Чтобы по серийному номеру можно БЫСТРО найти отгрузку
  6. TopicStarter Overlay
    cplusmax
    Offline

    cplusmax Опытный в 1С

    Регистрация:
    7 сен 2010
    Сообщения:
    154
    Симпатии:
    2
    Баллы:
    29
    Да нужно будет узнавать с помощью отчета по какой именно накладной был продан товар с данным сер. номером.
    Считаете, что лучше использовать оборотный регистр?
  7. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    В данном случае да. Ведь количественного учета нет
  8. TopicStarter Overlay
    cplusmax
    Offline

    cplusmax Опытный в 1С

    Регистрация:
    7 сен 2010
    Сообщения:
    154
    Симпатии:
    2
    Баллы:
    29
    А что тогра хранить в "ресурсах" оборотного регистра?
  9. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    А собственно ничего - оборотов как и остатков опять же нет))))) Вам нужна оперативная информаци (чтобы не перебирать документы) - вы ее получите
  10. TopicStarter Overlay
    cplusmax
    Offline

    cplusmax Опытный в 1С

    Регистрация:
    7 сен 2010
    Сообщения:
    154
    Симпатии:
    2
    Баллы:
    29
    Ладненько. буду пробовать спасибо за подсказку :)
  11. TopicStarter Overlay
    cplusmax
    Offline

    cplusmax Опытный в 1С

    Регистрация:
    7 сен 2010
    Сообщения:
    154
    Симпатии:
    2
    Баллы:
    29
    Получилось следующее:
    Регистр "СерийныеНомера" оборотный
    Измерения: "Номенклатура" и "Серийник"
    Ресурсов нет...
    Подскажите а как теперь вытащить из регистра информацию о нужном серийнике?
    Запросом как я понимаю не получится (обязательно нужно в запросе чтобы присутствовала функция)... а ресурсов то нет :(
    Код:
    ВыбратьДвижения(ТекущаяДата(),,);
    ПолучитьДвижение() 
    
    Вроде работает... но достает все движения за указанную дату...
    А мне нужно получить информацию именно по определенному серийному номеру...
  12. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Функция и не обязательна. В запросе используйте условие и группировку
  13. TopicStarter Overlay
    cplusmax
    Offline

    cplusmax Опытный в 1С

    Регистрация:
    7 сен 2010
    Сообщения:
    154
    Симпатии:
    2
    Баллы:
    29
    Вот что получилось:
    Код:
    Функция СравнитьСН(Сер1,Сер2)
    Если СокрЛП(Сер1)=Сер2 Тогда
    Возврат 1;
    КонецЕсли;
    
    Если СокрЛП(Сер1)=Лев(Сер2,35) Тогда
    Возврат 1;
    КонецЕсли;
    
    Возврат 0;
    КонецФункции
    
    ТекстЗапроса=
    "Период С НачДата по КонДата;
    |Серийник=Регистр.СерийныеНомера.Серийник;
    |Номенклатура=Регистр.СерийныеНомера.Номенклатура;
    |Док=Регистр.СерийныеНомера.ТекущийДокумент;
    |Группировка Номенклатура Без Групп;
    |Условие (СравнитьСН(Серийник,СтрокаПоиска)=1);";
    
    Запрос отрабатывает без ошибок но ничего не ворачивает :(
    Что может быть не так?
  14. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Попробуйте так:
    Код:
    Условие (Найти(СтрокаПоиска,Серийник)<>0)
    
    
    стараемся использовать стандартные функции. Сторонние сильно тормозят запрос
  15. TopicStarter Overlay
    cplusmax
    Offline

    cplusmax Опытный в 1С

    Регистрация:
    7 сен 2010
    Сообщения:
    154
    Симпатии:
    2
    Баллы:
    29
    Попробовал, результат тот же :(
    А еще попробовал вообще убрать строку с условием из запроса... и все равно результат запроса пуст :(
  16. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Хм. Действительно. Попробовал - не выдает. Был не прав.Придется задействовать ресурс который всегда будет хранить единицу
  17. TopicStarter Overlay
    cplusmax
    Offline

    cplusmax Опытный в 1С

    Регистрация:
    7 сен 2010
    Сообщения:
    154
    Симпатии:
    2
    Баллы:
    29
    Ок! Попробую с ресурсом... А в этом случае функция в запросе обязательна?
  18. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Да - поставьте банальное суммирование (кстати это тоже плюс - можно искать "дубли")
  19. TopicStarter Overlay
    cplusmax
    Offline

    cplusmax Опытный в 1С

    Регистрация:
    7 сен 2010
    Сообщения:
    154
    Симпатии:
    2
    Баллы:
    29
    Вот в таком варианте запрос ничего не ворачивает:
    Код:
     НачДата='01.01.1980'; КонДата=ТекущаяДата();
    ТекстЗапроса=
    "Период С НачДата по КонДата;
    |Серийник=Регистр.СерийныеНомера.Серийник;
    |Номенклатура=Регистр.СерийныеНомера.Номенклатура;
    |Док=Регистр.СерийныеНомера.ТекущийДокумент;
    |флаг=Регистр.СерийныеНомера.Флаг;  
    |функция фл=Сумма(Флаг);
    |Группировка Номенклатура Без Групп;
    |Условие (Найти(СтрокаПоиска,Серийник) <>0);";
    
    А если без условия, то ворачивает две строки, первая пустая, а во второй последняя строка табличной части проведенного документа
  20. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Чтобы не было пустой строки нужно делать запрос без итогов.
    Должен искать - код рабочий.

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