|
Запись в регистр сведений, глюк, помогите. | ☑ | ||
---|---|---|---|---|
0
НоваяВолна
21.07.21
✎
14:36
|
Создал новый регистр сведений. Непериодический, независимый. Имеет всего два измерения (плюс ресурсы) ЛицевойСчет и Телефон. Задача его первоначально заполнить данными. Данные получаю из Документов События и РегистрСведений.КонтактнаяИнформация. Причина таких танцев с бубном в том, что в разных источниках номера телефонов записывались в разном формате. Надо же привести к единому +7ХХХХХХХХХХ где первые 4 цифры могут буть кодом города или все 10 номер мобильного телефона.
Создал обработку, которая единоразово должна заполнить регистр. Сначала собираю данные, меняю формат номера телефона и вывожу на форму обработки. После этого пытаюсь записать в регистр. Процедура КнопкаВыполнитьНажатие(Кнопка) НаборЗаписей = РегистрыСведений.Модус_ТелефоныАбонентов.СоздатьНаборЗаписей(); НаборЗаписей.Записать(); НаборЗаписей = РегистрыСведений.Модус_ТелефоныАбонентов.СоздатьНаборЗаписей(); Для Каждого Стр Из СписокТелефонов Цикл НоваяЗапись = НаборЗаписей.Добавить(); НоваяЗапись.ЛицевойСчет = Стр.ЛицевойСчет; НоваяЗапись.Телефон = Стр.Телефон; КонецЦикла; НаборЗаписей.Записать(); КонецПроцедуры Получаю ошибку {ВнешняяОбработка.ЗаполнениеРегистраТелефоныАбонентов.Форма.Форма.Форма(45)}: Ошибка при вызове метода контекста (Записать) НаборЗаписей.Записать(); по причине: Запись с такими ключевыми полями существует! : Модус_ТелефоныАбонентов: , +7904ХХХХ530 (Регистр сведений: Телефоны абонентов; Номер строки: 24) При этом запись с этим же номером вижу, но ЛицевойСчет отличается. В чем я неправ, подскажите? |
|||
1
НоваяВолна
21.07.21
✎
14:39
|
+ (1) данные запросом получаю в ТЗ, ТЗ сворачиваю по "ЛицевойСчет, Телефон2
|
|||
2
НоваяВолна
21.07.21
✎
14:40
|
+ (1) Из этой ТЗ (свернутой) вывожу на форму обработки (для визуального контроля) и только с ТЧ обработки идет запись в регистр
|
|||
3
dubolom
21.07.21
✎
14:41
|
НаборЗаписей отладчиком смотрели в момент записи?
|
|||
4
НоваяВолна
21.07.21
✎
14:43
|
(3) нет, а что я там могу увидеть?
|
|||
5
dubolom
21.07.21
✎
14:43
|
(4) Например, дублирование записей по лицевому счёту и телефону:)
|
|||
6
НоваяВолна
21.07.21
✎
14:45
|
(5) посмотрю. Но видимо уже завтра с утра
|
|||
7
OldCondom
21.07.21
✎
14:46
|
Вот это программисты от бога просто, вот это новые волны. Зачем мне отладчик, что я там увижу? И правда.
Только что звонит программист, отключал ли я регламент. "Ты в консоли заданий смотрел?", "Нет", "В ЖР смотрел?", "Нет", "Остальные регламенты работают", "Не знаю", "Нахера мне звонишь?". |
|||
8
Kassern
21.07.21
✎
14:47
|
(0) а зачем вы в цикле набор заполняете? Получите результирующую таблицу с уникальными связями измерений и загрузить в ваш набор.
|
|||
9
НоваяВолна
21.07.21
✎
14:50
|
(8) ну как бы я с ТЧ обработки заполняю регистр, а вывожу в ТЧ для визуального контроля
|
|||
10
Kassern
21.07.21
✎
14:51
|
(9) а в чем проблема получить ТЗ из ТЧ? Вы проверяете на уникальность связей измерений?
|
|||
11
НоваяВолна
21.07.21
✎
14:51
|
(7) да, не чета старым годонам)))
|
|||
12
НоваяВолна
21.07.21
✎
14:51
|
(10) не подумал, попробую
|
|||
13
dubolom
21.07.21
✎
14:52
|
(9) Для визуального контроля кагбэ отладчик существует.
|
|||
14
dubolom
21.07.21
✎
14:53
|
И два раза записывать НаборЗаписей не обязательно, достаточно один раз его создать и записать с замещением (по умолчанию).
|
|||
15
OldCondom
21.07.21
✎
14:54
|
(10) да пусть хоть каждый раз набор создает с цикле, ошибка-то в другом.
"Запись с такими ключевыми полями существует! При этом запись с этим же номером вижу, но ЛицевойСчет отличается." Платформа пыталась сказать, что не сделала запись с одинаковыми полями. Ты смотришь в регистр, одинаковых полей не видишь. Но платформа не умеет сказать: "Правильно, я же не сделала дублирующую запись и выдала ошибку, поэтому ты и не видишь дублей!". |
|||
16
Kassern
21.07.21
✎
14:54
|
(14) для чего эти танцы с бубном, если метод загрузить и так очистит и запихнет что есть в тз?)
|
|||
17
Kassern
21.07.21
✎
14:55
|
(15) поэтому я и написал, чтобы он проконтролировал уникальность связи измерений.
|
|||
18
dubolom
21.07.21
✎
14:55
|
(16) Тоже верно.
|
|||
19
НоваяВолна
21.07.21
✎
14:56
|
(15) я смотрю в ТЧ, которую передаю на запись. А не в то что придумала себе платформа
|
|||
20
ДенисЧ
21.07.21
✎
14:58
|
(19) То есть ты смотришь в то, что придумал ты, а не в то, что выполняет система...
Скажите, товарищ прапрорщик, а у вас на мониторе трава ровно пострижена? |
|||
21
Исновая
21.07.21
✎
15:15
|
(20) там газон только у здания казначейства, так шо не подстрижена
|
|||
22
lodger
21.07.21
✎
15:17
|
Процедура КнопкаВыполнитьНажатие(Кнопка)
НаборЗаписей = РегистрыСведений.Модус_ТелефоныАбонентов.СоздатьНаборЗаписей(); ТабЗнач = СписокТелефонов.выгрузить(); ТабЗнач.Свернуть("ЛицевойСчет,Телефон"); НаборЗаписей.Загрузить(ТабЗнач); НаборЗаписей.Записать(Истина); КонецПроцедуры |
|||
23
Lexandr
21.07.21
✎
16:07
|
Возможно формат измерения "режет" лицевой счет в результате чего при записи разные лиц. счета на твой взгляд в ТЗ, а реально пытается записать одно и то же значение.
|
|||
24
Сергиус
21.07.21
✎
16:53
|
(0)У тебя походу пишет пустой лицевой счет в регистр
|
|||
25
OldCondom
21.07.21
✎
17:00
|
да Путин отладку по http подключает и правит значения в ТЗ, дублируя записи.
|
|||
26
Кулибин
21.07.21
✎
17:49
|
(25) ))) спасибо )
|
|||
28
НоваяВолна
22.07.21
✎
06:04
|
(20) хотите сказать что у меня запрос не прав? :-)
|
|||
29
ДенисЧ
22.07.21
✎
06:28
|
(28) Я хочу сказать, что нечего на зеркало пенять, коли.
Платформе и субду видней, что ты реально пытаешься записать. |
|||
30
OldCondom
22.07.21
✎
06:31
|
(27) быдло, английский подучи. Хотя нет, оставайся на том же уровне в русском языке, английском, программировании, культуре и всех остальных. Чтобы более развитым собратьям легче было расти.
Уму непостижимо, вторые сутки идут, а запись в регистр не сделана. |
|||
31
hhhh
22.07.21
✎
06:33
|
(22) ресурсы же вы все грохнули таким способом.
|
|||
32
НоваяВолна
22.07.21
✎
08:16
|
(30) ты из битвы экстрасенсов? Записи в регистр сделаны ещё вчера)))
|
|||
33
Мимохожий Однако
22.07.21
✎
09:08
|
(27) ОФФ. Вроде бы взрослый мальчик...(
|
|||
34
lodger
22.07.21
✎
09:29
|
(31) в куске кода (0) тоже нет ресурсов.
|
|||
35
НоваяВолна
23.07.21
✎
14:14
|
(34) так обработка в (0) нужна была для первичного заполнения регистра и все... надо было заполнить только измерения и измерение Телефон привести к формату +7ХХХХХХХХХХ. Было почти 1,5 миллиона записей, формат полная каша.. В итоге удалось записать регистр в нужном формате, оставив не более сотни "левых записей". В дальнейшем операторы будут их видеть, править/удалять из регистра. Как раз для этих целей созданы Булевы ресурсы. Как-то так...))
|
|||
36
НоваяВолна
23.07.21
✎
14:23
|
(0) да!!!! А ступил то в том, что измерению Телефон дал длину 20 символов, нарвавшись на 6-ти значный городской [пробел, запятая] 12 знаков мобильный +7ХХХХХХХХХХ.
Потом уже нашел записи вида ХХХХХХ,ХХХХХХ,ХХХХХХ и ХХХХХХ,ХХХХХХ,ХХХХХХ,ХХХХХХ с одним и тем же Лицевым, но из разных источников. Причем первые три ХХХХХХ одинаковые. Поэтому длин обрезалась и номер получался одинаковым.. .Тупанул, не спорю |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |