Страница 1 из 1

Одинаковые номера накладной и счета

СообщениеДобавлено: Чт мар 16, 2017 9:38 am
Beholder
Доброго дня!
Подскажите, как сделать так, чтобы номера документов на накладной и созданной по ней счету были одинаковыми, и проставлялись автоматически?
И еще скажите, можно ли, чтобы по каждому контрагенту номер счета формировался автоматически типа, 1,2,3, но именно по каждому контрагенту?

Re: Одинаковые номера накладной и счета

СообщениеДобавлено: Вт мар 28, 2017 4:10 pm
Beholder
Ответ все еще актуален.

Re: Одинаковые номера накладной и счета

СообщениеДобавлено: Вт мар 28, 2017 7:00 pm
dmitry
Можно добавить в любой документ свою логику.
Первые действия одинаковые для счета и накладной: нажать "Выбор операции", нажать "Изменить", нажать "Программа" (на скриншотах здесь - viewtopic.php?f=1&t=2205).
А текст подпрограммы скопировать и вставить разный.

1. Для счета (чтобы его номер совпадал с номером накладной):

Dim LinkOp as Predpr.Doc = Op.GetLinkDoc(2)
If LinkOp is nothing = False Then
Op.Num = LinkOp.DocNum
Op.Form.SetBoxText ("BoxNum", Op.Num)
End if


2. Для накладной (чтобы по каждому покупателю велась своя нумерация):

If Op.PersonID>0 Then
Dim MaxNum as Integer, T As Predpr.TableSQL
T = Predpr.DataMain.DBmain.OpenRecordset("SELECT Max(Num) AS [MaxNum] FROM Documents WHERE TypeID=2 and ID<>" & Op.ID & " and PersonID=" & Op.PersonID)
If T.RecordCount > 0 Then
MaxNum = T("MaxNum")
Op.Num = MaxNum+1
Op.Form.SetBoxText ("BoxNum", Op.Num)
End If
T.Close
End if


Тот и другой номер будет заполняться при проведении документа.

Re: Одинаковые номера накладной и счета

СообщениеДобавлено: Ср мар 29, 2017 11:52 am
Beholder
Спасибо!
А можно так же, чтобы и номер документа "поступления на РС", и документа "Поступление в кассу", тоже имели одинаковый номер с накладной и счетом.

Re: Одинаковые номера накладной и счета

СообщениеДобавлено: Ср мар 29, 2017 1:27 pm
vik
Beholder писал(а):Спасибо!
А можно так же, чтобы и номер документа "поступления на РС", и документа "Поступление в кассу", тоже имели одинаковый номер с накладной и счетом.

Так же как 1. Для счета, только вставить в "поступления на РС", "Поступление в кассу".

Re: Одинаковые номера накладной и счета

СообщениеДобавлено: Чт мар 30, 2017 7:09 pm
Beholder
Спасибо! номера документов теперь одинаковые, но номера накладных создаются все равно с каким-то другим алгоритмом.
Вот, что я хотел бы видеть.
Я завожу контрагента, и выписываю ему накладную, она идет под номером 1, соотвественно на основе этой накладной создается счет с таким же номером, и поступления на РС. Вторая накладная ему создается с номером 2, потом накладная 3 и т.д. до конца года.
Далее, я создаю контрагента №2, и создавая накладную для него она так же начинается с 1, потом накладная №2 и т.д.

Re: Одинаковые номера накладной и счета

СообщениеДобавлено: Пт мар 31, 2017 6:44 am
dmitry
Проверил. Сейчас при проведении накладной с новым покупателем вам выдает ошибку про Null.
Вставить в шаблон операции "Продажа" немного другой текст:

If Op.PersonID>0 Then
Dim MaxNum as Integer, T As Predpr.TableSQL
T = Predpr.DataMain.DBmain.OpenRecordset("SELECT Max(Num) AS [MaxNum] FROM Documents WHERE TypeID=2 and ID<>" & Op.ID & " and PersonID=" & Op.PersonID)
If T.RecordCount > 0 Then
MaxNum =Predpr.Globalfunction.Nz( T("MaxNum"),0)
Op.Num = MaxNum+1
Op.Form.SetBoxText ("BoxNum", Op.Num)
End If
T.Close
End if

Re: Одинаковые номера накладной и счета

СообщениеДобавлено: Пт мар 31, 2017 2:46 pm
Beholder
Все равно что-то не так, при сохранении программа все равно вбивает порядковый номер документа из всех созданных, так же теперь получается, что если изменил номер, например, на 1, то при сохранении программа меняет номер документа.
Может есть возможность прописать в программе, чтобы номер выдавался как n+1, где n, номер предыдущего документа созданный по этому контрагенту?
Или может я не правильно заполняю документ, поэтому эта программа не учитывается?

Re: Одинаковые номера накладной и счета

СообщениеДобавлено: Пт мар 31, 2017 3:23 pm
dmitry
Проверил. Работает правильно.
Чтобы было проще и надежной, отключите для расходной накладной автонумерацию в Сервис/Настройки, там - Работа/Документы.

1.png
1.png (18.01 КБ) Просмотров: 2435

Re: Одинаковые номера накладной и счета

СообщениеДобавлено: Вс апр 02, 2017 8:12 am
Beholder
Все таки хотелось бы, чтобы номера накладных проставлялись автоматически, в зависимости от определенного алгоритма.
Может быть вы мне объясните, как программа действует, может там есть какие-то определенные последовательности, чтобы этот код сработал?

Re: Одинаковые номера накладной и счета

СообщениеДобавлено: Вс апр 02, 2017 9:46 am
dmitry
И еще раз проверил на вашей же базе данных - все работает правильно.
Создайте новую накладную с новым покупателем и сохраните ее - будет номер 1. Измените в ней покупателя на другого и сохраните - будет максимальный номер по этому покупателю +1. Поменяйте на третьего, четвертого - при сохранении номер будет меняться.
P.S. Я наверное понял причину недоразумения - сначала сохраняйте документ, потом распечатывайте.

Re: Одинаковые номера накладной и счета

СообщениеДобавлено: Ср апр 12, 2017 5:12 am
Beholder
Я вроде понял что не так, если документ сохранять, но не проводить, то он присваивает общий порядковый номер, если его проводить, то так, как нужно. Можно немного доработать, и чтобы номера проставлялись даже без проводки.

Re: Одинаковые номера накладной и счета

СообщениеДобавлено: Ср апр 12, 2017 7:52 am
dmitry
Нет, индивидуальная подпрограмма, добавленная у вас, выполняется именно при проведении.