#0
by gray
Док.ПолучитьПозицию = "#20040430 863990000 38579 " первая часть понятна, это дата, а остальные составляющие ?
#2
by SKrin
вторая цифра - это время (как то там в секундах считается и складыаеется) третья цифра - это ИМХО ИД документа
#4
by Славко
Синтаксис: РазобратьПозициюДокумента(<Позиция>,<Дата>,<Час>,<Мин>,<Сек>,<Документ>) Назначение: Раскладывает позицию документа на составляющие и возвращает строковое представление позиции документа.
#5
by gray
Собственно, у меня проблема такая, что документы, существующие в 1с определенным образом выгружаются в другую БД, и мне важна последовательность следования этих документов во времени, а, как известно, в 1с могут и существую документы, время которых идентично вплоть до секунды ... Мне надо как-то узнать порядковый номер следования документа в общем журнале ...думал, позиция поможет
#6
by Оборотень
Очень похоже что последняя цифра как и сказал Rovan в есть внутренний номер объекта в 1С. Поэтому при совпадении времени я так думаю можно опереться на эти данные. Вроде того что чем больше идентификатор - тем позже создан объект... Есть ещё мысли?
#7
by YF
Вообще-то Док1 с позицией Поз1, Док2 с позицией Поз2. Если Поз1>Поз2 - > Док1 позже Док2 все просто. Позиции есть строки - > сравнивать из можно в любой системе, не только в 1С. Я не прав?
#9
by Оборотень
К второе число есть количество милисекунд с начала суток если выкинуть ноль к конце ... Так что в правильное решение ... это 1С отображает время документа до секунд, а есть возможность еще 10000 позиций в этоу секунду запихать, думаю достаточно для однозначного определения какой док был создан раньше :)
#10
by SKrin
создан то он создан, а если я время поменяю, то он будет в другой позиции, а ИД не поменяется
#11
by YF
Какая разница-то, время поменяется -> он будет раньше или позже всех доков с его предидущим временем, в чем проблема-то?
#12
by SKrin
Если док1 проведен в одно время и его поз.: "#20040430 863990000 38579 " Другой док2 : #20040430 973990000 38580 " И если я поменяю время док2 на время док1 то его поз. :#20040430 863990000 38580 " что получается...
#15
by Оборотень
Но позиция то изменится ... я и не предлагал опираться только на ИД. Так что есть позиции, вот их и нужно сравнивать :)
#17
by Оборотень
Позиция выжажается во времени и ИД документа Я сейчас на 1С поэкспериментировал ... Если выставляешь одинаковое время, то документом с меньшей позицией является док с меньшим ИД.
#18
by SKrin
собственно по сабжу: выгружаешь все доки в ТЗ с колонками: "ИДДок", "Док" где ИДДок-порядковый номер документа в ТЗ!, и все, вся последовательность сохранена ;) потом выгружаешь по порядку куда тебе надо
#21
by Оборотень
в чем неправ "Позиции документа — это строковое значение специального формата длиной 32 символа. Позиция документа однозначно характеризует расположение документа на оси времени относительно других документов, т. е. позиция документа заключает в себе и дату и время (с точностью до секунды), плюс некоторые дополнительные данные, определяющие взаимное расположение документов в пределах одной секунды. Позиции документов можно сравнивать (>; <), определяя какой документ раньше, какой позже." "...плюс некоторые дополнительные данные..." - и есть милисекунды и ИД документа.. А с согласен полностью - самое простое и верное решение :)
#23
by YF
Дык и окажется, что Док2 позднее док1, как и было в начале, ачто-то не так должно было быть? +По-моему почти никогда время док вручную не меняют, т.е. меняют, но типа в начало дня, в конец дня.
#26
by YF
Не, про 12 подробнее, чо-то я не понял, там ведь все ОК ? + 1С стандартно дает пользователям право (возможность) менять ВРЕМЯ а не позицию документа. И это, я считаю, правильно. Т. о. исключаются всякие непонятки, типа . Если док был раньше Док2, то изменив его ВРЕМЯ на время Док2 все равно получим Док раньше Док2.
#28
by Оборотень
+ Если меняется время - меняется и позиция документа ибо время есть часть позиции. а сравнение ИД и придумано для разрешения коллизий типа
#30
by Оборотень
Дык и не нужно сравнивать ИД - когда сравниваем позиции которые получаем по ПолучитьПозицию - так и получается ... отдельно ничего не нужно сравнивать все за нас сделает 1С. ... Это просто по смыслу технология сравнения такая :)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- Как соединить компьютеры по телефонной линии с помощью ADSL-модемов?
- Фатальная ошибка в обновлении 1С Бух. 461
- как внести первоначальные остатки по забалансовым счетам?
- Есть реквизит табличной части типа Булево, как сделать чтобы в ТЧ (+)
- В ТЗ надо колонки цифрами назвать.
- прикрепленные файлы
- Как же это сделать без мышки?!
- Как из таблицы значений выгрузить данные в dbf файл?
- Сложные проводки в 1С 8
- Конвертер табличных документов 1С:Предприятия для MS Excel
- Инвентаризационная опись по 10.11.1
- Копирую модуль документа, вставляю в word, а там каля маля.
- сообщить(Докум.ТекущийДокумент()) проблема
- 1C и WindowsXP против 1C и Windows2k
- Ошибка загрузки модуля CONFIG.DLL
- Нумерация страниц в отчете 1с
- Конвертация 111: Как из документов в ТиС сделать Операции с проводками в Бу
- Как строки таблицы даных сделать колонками?
- ЗИК.Удержания по исполнительному листу.
- Почему в запросе количество строк 6, а в выборке из этого запроса - 7 ?