Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Vovan Гость
|
Добавлено: Вт Июн 15, 2010 3:22 pm Заголовок сообщения: Автонумерация |
|
|
Не знаю куда задать вопрос. Может уже обсуждалось.
Как можно изменить элемент Автонумирации не относя это ни к какой хоз. операции. Пробовал сделать так:
Код: | Dim NumB
Sub ShtBook_OnLoad
OnDate = Date
With WorkArea
NumB = .Autonum(.Autonums.Find("Наименование")).Number + 1
.Autonum(.Autonums.Find("Наименование")).Number = NumB
.Autonum(.Autonums.Find("Наименование")).Save()
End With
End Sub |
... ничего не получается
Последний раз редактировалось: Vovan (Ср Июн 16, 2010 10:10 am), всего редактировалось 1 раз |
|
Вернуться к началу |
|
|
olimp Site Admin
Зарегистрирован: 10.03.2005 Сообщения: 2661
|
Добавлено: Ср Июн 16, 2010 8:18 am Заголовок сообщения: Re: Автонумерация |
|
|
Vovan писал(а): | Не знаю куда задать вопрос. Может уже обсуждалось.
Как можно изменить элемент Автонумирации не относя это ни к какой хоз. операции. Пробовал сделать так:
Код: | Dim NumB
Sub ShtBook_OnLoad
OnDate = Date
With WorkArea
NumB = .Autonum(.Autonums.Find("Наименование")).Number + 1
.Autonum(.Autonums.Find("Кореспонденция")).Number = NumB
.Autonum(.Autonums.Find("Наименование")).Save()
End With
End Sub |
... ничего не получается |
Честно говоря, мне трудно понять чего добивался автор кода.
Можно словами по-русски сказать чего сделать хочется ?
Автонумерация - это механизм для автоматического формирования номера документа. Связана она с формой документа. Управляется из хозяйственной операции. Но ничто не мешает устанавливать ее свойства программированием на уровне объектной модели. |
|
Вернуться к началу |
|
|
Vovan Гость
|
Добавлено: Ср Июн 16, 2010 10:09 am Заголовок сообщения: |
|
|
В общем не создавая хозяёственную операцию хотелосьбы вести нумерацию документов. Так сказать задействовать как счётчик.
Цитата: | Связана она с формой документа. |
И связать с таблицей. |
|
Вернуться к началу |
|
|
olimp Site Admin
Зарегистрирован: 10.03.2005 Сообщения: 2661
|
Добавлено: Ср Июн 16, 2010 10:24 am Заголовок сообщения: |
|
|
Vovan писал(а): | В общем не создавая хозяёственную операцию хотелосьбы вести нумерацию документов. Так сказать задействовать как счётчик. |
У Вас проблема в коде
Каждый раз выражение
Код: | .Autonum(.Autonums.Find("Наименование")) |
создает новый экземпляр объекта и изменения не сохраняются.
Вот код тот же по смыслу, только рабочий
Код: | Sub ShtBook_OnLoad
Dim AunonumID
AunonumID = .Autonums.Find("Наименование")
If AunonumID <> 0 Then
With WorkArea.Autonum(AunonumID)
.Number = .Number + 1
.Save
End With
End If
End Sub |
|
|
Вернуться к началу |
|
|
Vovan Гость
|
Добавлено: Ср Июн 16, 2010 10:49 am Заголовок сообщения: |
|
|
Спасибо... Понял свою ошибку |
|
Вернуться к началу |
|
|
Vovan Гость
|
Добавлено: Ср Июн 16, 2010 11:03 am Заголовок сообщения: |
|
|
olimp писал(а): | Vovan писал(а): | В общем не создавая хозяёственную операцию хотелосьбы вести нумерацию документов. Так сказать задействовать как счётчик. |
У Вас проблема в коде
Каждый раз выражение
Код: | .Autonum(.Autonums.Find("Наименование")) |
создает новый экземпляр объекта и изменения не сохраняются.
Вот код тот же по смыслу, только рабочий
Код: | Sub ShtBook_OnLoad
Dim AunonumID
AunonumID = .Autonums.Find("Наименование")
If AunonumID <> 0 Then
With WorkArea.Autonum(AunonumID)
.Number = .Number + 1
.Save
End With
End If
End Sub |
|
А вот это зачем? Цитата: | Код: | If AunonumID <> 0 Then |
|
|
|
Вернуться к началу |
|
|
olimp Site Admin
Зарегистрирован: 10.03.2005 Сообщения: 2661
|
Добавлено: Ср Июн 16, 2010 12:56 pm Заголовок сообщения: |
|
|
[quote="Vovan"]
А вот это зачем? Цитата: | Код: | If AunonumID <> 0 Then |
|
Проверка на существование такой автонумерации. |
|
Вернуться к началу |
|
|
Vovan Гость
|
Добавлено: Ср Июн 16, 2010 4:03 pm Заголовок сообщения: |
|
|
Ясно. Ещё раз спасибо за помощь! |
|
Вернуться к началу |
|
|
|