|
Запись в регистр сведений. Такая уже существует (( | ☑ | ||
---|---|---|---|---|
0
Анастасия Изотова
30.07.15
✎
10:59
|
Добрый день. Помогите советом. У меня 1С 8.1. нетиповая
регистр сведений. в него попадают движения из одного из документов. В каждом таком документе есть табличная часть с услугами для пациентов. но возникла проблема. когда я делаю массовое перепроведение документов, за большой период, процесс стопорится с ошибкой: Запись с такими ключевыми полями существует! : : : (Регистр сведений: Назначение на осмотр; Номер строки: 24) я так поняла это потому что если в : документ №001 Иванов услуга Икс документ №014 Иванов услуг десять штук + снова услуга Икс, при проведении второго документа 1С не хочет писать в регистр сведений эту строку. Что я делаю не так ? Ведь оба документа, где совпадает строка услуги, отличаются полями и Номером, и датой и составом табличной части. Почему тогда на очередной документ регистр сведений не хочет сделать запись ? |
|||
1
Euguln
30.07.15
✎
11:01
|
(0) Периодичность регистра? Измерения?
|
|||
2
Остап Сулейманович
30.07.15
✎
11:05
|
(1) Периодичность ни при делах. Документ №014 в момент обычного проведения провелся и не выругался на дублирование ключевых полей.
Скорее всего фишка в настройках движений. Видимо не установлен режим "Удалять автоматически". |
|||
3
Euguln
30.07.15
✎
11:06
|
(2) При таком режиме будет ругаться уже на первой строке
|
|||
4
Остап Сулейманович
30.07.15
✎
11:08
|
(3) А... Ну да. Точно.
|
|||
5
Анастасия Изотова
31.07.15
✎
03:31
|
Периодичность: В пределах секунды.
Измерения: - Организация - Контрагент - Договор - Пациент - Дата - КомплУслуга - ПростаяУслуга - ТипЦен - Номер ресурсы: - Цена Такие же поля есть в первичном документе, который является регистратором (единственным) для этого регистра. Но почему ошибка с упоминанием Ключевых полей ? Поля, я так понимаю, тут все равнозначные. Но строка, очередная запись в регист, не уникальна, там ведь есть и дата(время) и номер исходного документа. Даже если одна и та же услуга, по одному и тому же пациенту, будет регистрироваться, то в разные же периоды, не одновременно же. тогда при чем здесь такой контроль уникальности ? |
|||
6
Andrewww123
31.07.15
✎
04:44
|
Может всё проще и в документе есть одинаковые строки?
|
|||
7
Andrewww123
31.07.15
✎
04:57
|
Хотя нет, там же НомерСтроки будет, раз регистр подчинен регистратору. Ну тогда тактика простая: посмотреть значения всех полей совпадающей записи и проверить регистр
|
|||
8
Peltzer
31.07.15
✎
05:11
|
Может быть, в модуле формы зашито предварительное свёртывание ТЧ перед проведением?
|
|||
9
Анастасия Изотова
31.07.15
✎
05:31
|
Поразбиралась:
есть документ №001 . в 12:00 На Иванов И.И. в табличной части одна строка. услуга. он провелся. и есть запись в регистре сведений есть документ №014. в 12:15 На Иванов И.И. (в данном случае это вторая запись в справочнике ФизЛиц, пуля в пулю (видимо одна из литер на ENG внесена, так что проверка на уникальность ФИО + дата рождения, пропустила его.) в табоичной части 15 строк. услуг. не повторяющихся с документом №001 он не проводится. выдает эту ошибку. и в регистр не пишется. я просто не могу понять, что между ними общего ? даже если бы совпадали ВСЕ поля, номер то дока, и дата-период, уникальны ...!! |
|||
10
Peltzer
31.07.15
✎
05:35
|
А часом пациент в регистре сведений не тип строка?
|
|||
11
Peltzer
31.07.15
✎
05:36
|
У вас периодичность - секунда. Не важно кто в эту секунду пишет, если измерения совпадают - будет ошибка.
|
|||
12
Maxwell198705
31.07.15
✎
05:54
|
была такая проблемка, но записей было не много, а записать все очень хотелось, делал через "попытку".Временно заполнял во временную таблицу,а когда ошибка срабатывала, загружал её в регистр сведений. на след этапе записывал все записи следующие за повторяющимися, т.е. процесс записи разбил на 2 этапа. а потом уже разбирался с проблемными документами
|
|||
13
Maxwell198705
31.07.15
✎
05:56
|
на уровне платформы, если измерения совпадают, то запись не производится. платформа ведь не смотрит на наименования, а работает исключительно по полям GUID, может с этим как то связанно.
|
|||
14
Анастасия Изотова
31.07.15
✎
06:00
|
Пациент: Тип СправочникСсылка.ФизическиеЛица
Периодичность - секунда ? А то что обе конфликтующие записи (оба документа) разнятся во времени на 15 минут , как с этим быть ? Если с периодичностью - проблема, то посоветуйте как быть ? У меня задача: Вести учет по всем документам этого типа, с привязкой к пациенту и услугам из табличной части. что бы потом можно было из РегСвед доставать данные: какому пациенту, какие услуги, когда и сколько. то есть на каждый очередной документ нужно создавать отдельную строку в регистре сведений. (ну и если первичный документ кто то перепроведет, то что бы в рег сведений сотетсвующие строки изменились) может мне сменить тип Периодичности на : По позиции регистратора ? мне бы конфликт этот странный устранить. |
|||
15
Альбатрос
31.07.15
✎
06:01
|
(14) Для начала выложи код записи в РС
|
|||
16
Анастасия Изотова
31.07.15
✎
06:04
|
Для Каждого ТекСтрокаУслуги Из Услуги Цикл
Движение = Движения.НазначениеНаОсмотр.Добавить(); Движение.Номер = Номер; Движение.Период = Дата; Движение.Дата = Дата; Движение.Организация = Организация; Движение.КомплУслуга = Услуга; Движение.Пациент = Пациент; Движение.Контрагент = КонтрагентЮрЛицо; Движение.НомерБСО = БСО; Движение.ПростаяУслуга = ТекСтрокаУслуги.Услуга; КонецЦикла; |
|||
17
Альбатрос
31.07.15
✎
06:16
|
(16) Одинаковых строк в документе нет?
|
|||
18
Анастасия Изотова
31.07.15
✎
06:31
|
Была. Я не знаю , КАК они умудрились провести этот документ, но там было задвоение в табличной части (упала головой в стол). Вот я недалекая. Жеееесть.
|
|||
19
Анастасия Изотова
31.07.15
✎
06:32
|
Скажите, для вящей оптимизации, есть ли смысл менять периодичность регистра ?
Исходя из задачи, ему поставленной ? |
|||
20
PaulBC
31.07.15
✎
07:03
|
(14) >>"Вести учет по всем документам этого типа, с привязкой к пациенту и услугам из табличной части.
что бы потом можно было из РегСвед доставать данные: какому пациенту, какие услуги, когда и сколько. ... ну и если первичный документ кто то перепроведет, то что бы в рег сведений сотетсвующие строки изменились) " тут больше подойдет регистр накопления с видом Обороты (по аналогии с продажами) |
|||
21
newbling
31.07.15
✎
07:06
|
Если ты просто хочешь чтоб "взлетело наконец", добавь измерение НомерСтрокиКакойТоСвой
|
|||
22
Peltzer
31.07.15
✎
07:39
|
Или добавь в обработке проведения перед циклом
ТЗ.Свернуть("Организация, Пациент ит.д."); |
|||
23
ЧеловекДуши
31.07.15
✎
08:38
|
(0) Ну перепиши её, что не так?
Если пытаешься писать в диалоге Регистра. т.е. Руками. Тогда Перед Записью сперва удаляешь существующую запись по Регистру. А потом все делается типовыми средствами 1С :) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |