<!--QuoteBegin-Erick+28:02:2006, 22:54 -->
<span class="vbquote">(Erick @ 28:02:2006, 22:54 )</span><!--QuoteEBegin-->В приведённой выше ссылке два примера работают не правильно. В первом примере, если открывать форму только для добавления, то всё работает ок. Но если у меня к примеру есть 2 документа, я открываю для редактирования первый, то в поле № у меня стоит значение 3.
Второй пример ещё похлеще. При каждом открытии формы счётчик увеличивается на 1.
Так что тема пока не закрыта. Первый пример вроде бы ничего, но как решить проблему, ведь одна и таже форма используется и для добавления и для редактирования, а код находится в postopen?
[snapback]31245" rel="nofollow" target="_blank[/snapback]
[/quote]
Код взятый тобой для анализа неправильный по многим причинам (там в топике всё расписано).
Нужно пользоваться профильным документом.
У меня есть реальная база работающая с таким алгоритмом:
...
Set db = session.CurrentDatabase
Set view = db.GetView( "(SetupHide)" )
If view.TopLevelEntryCount=0 Then
Messagebox "Нет документа настройки!", 48,"Свяжитесь с администратором!"
End
End If
If view.TopLevelEntryCount>0 Then
Set setupdoc = view.GetLastDocument
Set doc = nd.document
count = setupdoc.count(0) 'взял значение cчётчика
setupdoc.count=count+1 'увеличил значение cчётчика
Call setupdoc.save (True,True,True) 'сохранил счетчик
doc.rgCode2=count+1 ' вставляем номер в документ
End If
...
setupdoc - профильный документ в котором содержится счетик