|
Как заменить тип NULL на пустое значение типа СправочникСсылка | ☑ | ||
---|---|---|---|---|
0
Yukka
02.09.11
✎
09:16
|
Доброе утро всем!
В базе есть документы ОперацияБух, где в полях ВалютаДт и ВалютаКт пустое значение типа NULL. Можно ли как-то заменить его на Справочники.Валюты.ПустаяСсылка()? Дело в том, что в отчетах, если стоит галка "Валюта" такие операции выделяются в отдельный блок. Пишу: НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Регистратор.Значение = Результат.Регистратор; НаборЗаписей.Прочитать(); Для каждого ЗаписьНЗ Из НаборЗаписей Цикл Если записьНЗ.ВалютаДт = NULL Тогда записьнз.ВалютаДт = Справочники.Валюты.ПустаяСсылка(); конецесли; Если ЗаписьНЗ.ВалютаКт = NULL Тогда записьнз.ВалютаКт = Справочники.Валюты.ПустаяСсылка(); КонецЕсли; конеццикла; НаборЗаписей.Записать(); Но это не работает. |
|||
1
lxs
02.09.11
✎
09:17
|
Отладчиком смотрел? Там точно null? Может неопределено?
|
|||
2
lxs
02.09.11
✎
09:18
|
*смотрелА
|
|||
3
Ненавижу 1С
гуру
02.09.11
✎
09:18
|
ща, подождите, кофе схожу налью себе
|
|||
4
catena
02.09.11
✎
09:18
|
"= NULL " <=> "= Неопределено "
|
|||
5
Нуф-Нуф
02.09.11
✎
09:18
|
может быть счет не валютный и соответственно там пусто?
|
|||
6
lxs
02.09.11
✎
09:18
|
Хотя в регистре Неопределено.. Это отголоски переноса?
|
|||
7
lxs
02.09.11
✎
09:19
|
(5) Если пусто, значит при нормальной ситуации будет пустая ссылка.
|
|||
8
lxs
02.09.11
✎
09:19
|
(3) круассаны не забудь
|
|||
9
Yukka
02.09.11
✎
09:22
|
Точно NUll, да результат переноса. Причем, часть проводкой с пустой ссылкой на справочник, а часть с NULL.
|
|||
10
catena
02.09.11
✎
09:24
|
(9)Поменяй в коде NULL на Неопределено!
|
|||
11
lxs
02.09.11
✎
09:26
|
(10) в (1) уже сказано.. Пока не реагирует..)
|
|||
12
Ненавижу 1С
гуру
02.09.11
✎
09:26
|
Если Не ЗначениеЗаполнено(ЗаписьНЗ.ВалютаКт) Тогда
|
|||
13
catena
02.09.11
✎
09:27
|
(11)Может она намек не поняла...
|
|||
14
Ненавижу 1С
гуру
02.09.11
✎
09:27
|
гыгы
|
|||
15
hhhh
02.09.11
✎
09:29
|
(9) ТИИ попробуйте.
|
|||
16
Yukka
02.09.11
✎
09:29
|
(10), (11), (12)
там действительно стоит не неопределно, а NULL/ Условие Если записьНЗ.ВалютаДт = NULL Тогда срабатывает. И даже происходит присвоение пустой ссылки. Но после записи набора все равно остатся NULL |
|||
17
hhhh
02.09.11
✎
09:31
|
(16) ну тогда (5) читайте.
|
|||
18
Ненавижу 1С
гуру
02.09.11
✎
09:41
|
подождите закрывать тему
|
|||
19
ptiz
02.09.11
✎
09:51
|
Валюты в записи по невалютному счету не существует в принципе. Туда нельзя ничего записать.
|
|||
20
Yukka
02.09.11
✎
09:52
|
(17), (19) признак валютный у счета не стоит. Но у субконто стоит галка "Валюта".
|
|||
21
ZanderZ
02.09.11
✎
10:00
|
(20) может в модуле набора записей код который не дает записывать Валюту на не валютный счет.
|
|||
22
Mort
02.09.11
✎
10:02
|
АДЪ
|
|||
23
hhhh
02.09.11
✎
10:04
|
(20) ну если счет не валютный, то валюта там будет MULL всегда. Придется вам как-то с этим жить.
|
|||
24
hhhh
02.09.11
✎
10:04
|
(23)+ NULL
|
|||
25
Ненавижу 1С
гуру
02.09.11
✎
10:08
|
||||
26
Лефмихалыч
02.09.11
✎
10:16
|
(0) на прошлой работе была такая же проблема. Мы ее кажись прямым запросом по замене значений решили. Если не забуду, вечером кину скрипт - он дома, а я на работе.
|
|||
27
Mort
02.09.11
✎
10:18
|
Эти пляски с бубном либо от некорректно поставленной задачи или от некомпетентности исполнителей.
|
|||
28
acsent
02.09.11
✎
10:19
|
Если НЕ Проводка.СчетДт.Валютный Тогда
Проводка.ВалютаДт = Неопределено; КонецЕсли; |
|||
29
Лефмихалыч
02.09.11
✎
10:21
|
(27) либо от того, что признак валютного учета в счете поменяли, когда по нему уже были каике-то проводки.
Хотя - это тоже рукожопость и головтяпство... |
|||
30
acsent
02.09.11
✎
10:23
|
||||
31
acsent
02.09.11
✎
10:24
|
(29) Не из-за этого. Причины появления такой ошибки пока не установлены
|
|||
32
vde69
02.09.11
✎
10:28
|
1. сделай тестирование и исправление, есть старый косяк в 13 платформе (некорректная реструктуризация)
2. НаборЗаписей неправильно работает с сабщем причина - набор содержит записи разных счетов (и валютные и не валютные) и по этому в набор можно записать значение которое в базу не будет записано в принцепе |
|||
33
NcSteel
02.09.11
✎
11:10
|
(26) Не публикуйте алгоритмы взлома и ссылки на такие алгоритмы, а также всевозможные "патчи", "крэки", "эмуляторы", "серийные номера", "коды активации" и т.д.
|
|||
34
zak555
02.09.11
✎
11:18
|
может переписать запрос, по получении всех движений с условием на пустую ссылку
ЕСТЬNULL(РегистрыБухгалтерииХозрасчетный.ВалютаДт , Справочники.Валюты.ПустаяСсылка()) КАК ВалютаДт, ЕСТЬNULL(РегистрыБухгалтерииХозрасчетный.ВалютаКт , Справочники.Валюты.ПустаяСсылка()) КАК ВалютаКт и если он выполнился загрухить в регистр ? |
|||
35
zak555
02.09.11
✎
11:24
|
или так нельзя ?
|
|||
36
Yukka
02.09.11
✎
11:36
|
(34), (35)
я пробовала - не просто переписывать в существущей записи набора валюту, а очищать и создавать новые записи. Все равно null. похоже это связано со счетами, т.е. потому что не установлен признак валютного учета. |
|||
37
zak555
02.09.11
✎
11:38
|
(36) 8ку не знаю
предположил - может этот вариант покатит |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |