Автоматическое заполнение документа Перемещение #514936


#0 by mrleo
В 1С Предприниматель нужно сделать внешнюю обработку, решающую следующую задачу - Кроме Основного склада, есть несколько складов, с которых отгружаются Товары определенным клиентам (например, Склад А - отгрузка клинту А, склад Б - отгрузка клиенту Б и т.д). Эти склады созданы из-за того, что клиент А (и аналогично другие клиенты) имеют свои требовния к наименованию позиций Номенклатуры. Получается, что одна и та же позиция номенклатуры называется на Основном складе по одному, на складе А - по другому и т.д. Задача обработки свести все наименования на скаладах к одному наименованию, для этого: 1. автоматически переименовать в Документе Реализация для клиента А позиции склада А на позиции Основного склада для временного интервала 1 неделя. 2. сделать перемещение необходимого количества товара с Основного склада на склад А по каждой переименованной позиции. С приведением позиций номенклатуры решаю задачу созданием таблицы соответствий номенклатуры, хочу спросить - можно ли такую таблицу использовать из внешнего файла, например, из exel-файла? Второй вопрос, ничего не получается с автоматическим заполнением Документа Перемещение. Могу заполнить только Номер и Дату документа, а позиции шапки и табличная часть не заполняется.
#1 by andrewks
хочешь кому-то шабашку подкинуть на выходные? ну дык не стесняйся, выкладывай ТЗ и тариф.
#2 by andrewks
+ ой, пардон, ТЗ вроде как есть. Тарифа нет.
#3 by mrleo
1-й вопрос - конкретный - можно из файла или нет, 2 -й вопрос - как заполнить абстрактный документ Перемещение? (Вы за буквы, которые пишите - деньги тоже берете - так уже много написали!)
#4 by ДенисЧ
по второму вопросу - показывай код. Ибо всё заполняется нормально.
#5 by andrewks
1. да 2. элементарно. 3. да. рубль/штука
#6 by mrleo
#7 by mrleo
как шапку документа Перемещения заполнить, не знаю
#8 by ДенисЧ
и так далее.
#9 by Mikeware
изысканый бред...
#10 by Злопчинский
ну открой конфигуратор и посмотри какие реквизиты в шапке, + еще посмотри на общие реквизиты, можно также открыть модуль формы документа и посмотреть что написанов процедуре ВводНового
#11 by Злопчинский
"01.01."+Строка(ДатаГод(НачДата)) можно заменить без преобразования в строку . "01.01."+2010 в итоге будет "01.01.2010"
#12 by Злопчинский
в правильно написали... . нафига искать последний номер...? система сама пронумерует новый создаваемый документ с инкрементом на единицу. если автонумерация документов отключена то для поиска последнего использованного номера не надо перебирать все доки в прямом порядке - достаточно получить первый док в обратном порядке... . + приведенный выше код будет косячить если в интервале нет ни одного дока - номер останется неопределенным...
#13 by andrewks
ТаблЗначенийПеремещения заполняется, а вот где она закачивается в документ? нету. и вообще можно сразу в документ писать построчно, минуя ТЗ.
#14 by mrleo
конфигуратор открыть не могу, т.к. в 1С Предпринимателе нет конфигуратора - пишу во внешнем редакторе Интеллигент.
#15 by andrewks
+ да, и еще вопрос: какой смысл придается передаче в модуль проведения параметра "Программно"? разные алгоритмы проведения при вызове из разных мест?
#16 by andrewks
не самый лучший способ для изучения 1с :)
#17 by mrleo
если не определять номер документа - выдается, сообщение "номер не уникальный", а как получить первый док в обратном порядке?
#18 by mrleo
"Программно" - сам не знаю, убрать?
#19 by andrewks
ну, поскольку, как я понимаю, в модуль дока залезть все равно не можешь, лучше убрать.
#20 by andrewks
значит, нумерация была испорчена вручную. попробуй забить № А00001 - после этого должно пойти по-порядку. а так- ОбраныйПорядок перед ВыбратьДоки
#21 by andrewks
+ ОбраныйПорядок -> ОбратныйПорядок
#22 by Злопчинский
следует знать порядок автонумерации документов. В общем виде можно описать так. Берется требуемый вид документов, например, Перемещение. Определяются существующие префиксы, например, определились "Прм" и "Пере" (т.е. есть доки с номерами типа Прм0010 и Пере23456). Берется последний по алфавиту префикс - в нашем случае это "Прм" - определяется максимальная числовая часть таких документов и наращивается на единицу - не увеличивается числовая часть, а "наращивается" с соблюдением ОТВЕДЕННОГО количества разрядов. то есть если самый большой номер Прм99, то следующий будет Прм10 (99=1=100 и обрезается на 2 разряда), а Прм10 - уже такой есть. Причина такого трабла - некоторые юзвери считают себя достаточно умными чтобы нумеровать документы вручную - видимо от этого их штырит.. а тут просто: прронумеровал один раз вручную - НУМЕРУЙ ВРУЧНУЮ ДАЛЬШЕ.
#23 by mrleo
Нумерация не испорчена. иногда перемещение делается задним числом - появляется документ с последним номером, но с более ранним числом, а при автонумерации берется номер последнего по дате (а не по номеру) документа! поэтому в проге использована простая нумерация с поиском последнего номера...
#24 by Злопчинский
бред какой-то... у вас установлена автонумерация в пределах дня?
#25 by mrleo
да, ладно с нумерацией... это не главное. как заполнять шапку документа? не получается ПеремещениеНовое.СкладКуда = СкладКуда; там в шапке есть еще "вид деятельности" для обоих складов и выбор "По операциям облагаемым НДС" для каждого склада.
#26 by andrewks
и как бы он это сделал без конфигуратора? :)
#27 by andrewks
и т.д. по аналогии
#28 by mrleo
Заполение таблицы строк в документе Перемещение выполняется, только пересится количество и документ основание, а сами наименования номенклатуры остаются пустыми, хотя в таблице значений (проверял) они есть! в чем тут дело?
#29 by andrewks
НайтиПоНаименованию может возвращать 0 или 1 - в зависимости от того, нашел такой элемент или нет. значит, не находит. а вот оператор с СоздатьОбъект лучше выносить за цикл.
#30 by DJ Anthon
уже на первой строчке кода в осадок выпал ) НачГода отменили?
#31 by andrewks
рано выпал. дальше читай.
#32 by ZoRN
хахахахахха
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С