Вход | Регистрация


1С:Предприятие ::

Метки: 

Добавление записи в РС УФ

Я
   Krolik Bezobraznik
 
04.09.18 - 12:42
Вроде не пятница, подскажите в чем может быть загвоздка. Гугл меня уже баннит.

УФ. Добавляю запись в РС, которые не подчинен регистраторам и не является переодическим.

Добавляю запись на сервере. После добавления проверяю в отладчике количество записей - все ок. Даже если в этот момент запустить толстый клиент и открыть РС - запись существует. Но после того как из серверной процедуры отладчик переходит в клиентскую из которой была вызвана - запись пропадает.

В чудеса не верю - догадки кончились.
 
 
   Кац
 
1 - 04.09.18 - 13:09
не понял, набор записей расположен на форме?
   Krolik Bezobraznik
 
2 - 04.09.18 - 13:13
(1) Нет конечно. Добавление вызываетя из формы по кнопке. Набор записей заполняется и записывается на сервере.
   Кац
 
3 - 04.09.18 - 13:15
как бы намекаешь, что запись из БД вообще чтоль пропадает?
   Krolik Bezobraznik
 
4 - 04.09.18 - 13:16
(3) Про БД не знаю, а вот в РС она исчезает.
   Кац
 
5 - 04.09.18 - 13:19
бггг
   Кац
 
6 - 04.09.18 - 13:19
показывай как добавляешь запись
   Krolik Bezobraznik
 
7 - 04.09.18 - 13:21
РС с двумя измерениями: НомерЗаписи и НомерЗаписиПартии

Процедура находится в модуле менеджера РС

    НаборЗаписей = РегистрыСведений.WMS_ХранилищеФайловУчетныхПартий.СоздатьНаборЗаписей();
        НаборЗаписей.Прочитать();
        НоваяЗапись = НаборЗаписей.Добавить();
        НоваяЗапись.ДатаДобавления = ДатаДобавления;
        НоваяЗапись.ВидДокумента = ВидДокумента;
        НоваяЗапись.НомерЗаписиПартии = СтруктураНомеров.НомерЗаписиВЖурналеПартий;
        НоваяЗапись.Комментарий = Комментарий;
        НоваяЗапись.ПутьКФайлу = ПутьКФайлуВХранилище;
        НоваяЗапись.Ответственный = ПараметрыСеанса.ТекущийПользователь;
        новаяЗапись.ИмяФайла = ИмяФайлаВХранилище;
        НовыйНомер = ПолучитьНовыйНомерЗаписи();
        
        НоваяЗапись.НомерЗаписи = НовыйНомер;
        
        Попытка
            НаборЗаписей.Записать();
            НаборЗаписей.Прочитать();
            
            ДобавлениеУспешно = Истина;
        Исключение
            ДобавлениеУспешно = Ложь;
        КонецПопытки;
   DrWatson
 
8 - 04.09.18 - 13:26
Может пропадать, если не записана транзакция.
   Кац
 
9 - 04.09.18 - 13:30
Какое то добавление записи через жопу
   Кац
 
10 - 04.09.18 - 13:34
 
 Рекламное место пустует
   hhhh
 
11 - 04.09.18 - 13:36
(7) а где у вас отбор? ВЫ что целиком регистр зачитываете каждый раз?
   Krolik Bezobraznik
 
12 - 04.09.18 - 13:38
(11) Нет, это я для проверки количества записей сделал. Чтобы можно было проверить до добавления и после в отладчике. Конечно код немного не такой
   Krolik Bezobraznik
 
13 - 04.09.18 - 13:40
(8) не завершенные транзакции действительно были. Убрал я их.. пока не полегчало
   Krolik Bezobraznik
 
14 - 04.09.18 - 13:41
(9) В данном случае не имеет значение каким образом я записываю новую запись в РС. Хоть через плечо. Дело в том, что я знаю точно, что пока отладчик находится на сервере - запись в РС появляется и существует до момента пока отладчик не выйдет с сервера обратно в клиента.
   hhhh
 
15 - 04.09.18 - 13:42
(14) а в ПолучитьНовыйНомерЗаписи() чего там? тоже создание регистра?
   Krolik Bezobraznik
 
16 - 04.09.18 - 13:43
(15) Функция ПолучитьНовыйНомерЗаписи()
    
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ ПЕРВЫЕ 1
        |    WMS_ХранилищеФайловУчетныхПартий.НомерЗаписи КАК НомерЗаписи
        |ИЗ
        |    РегистрСведений.WMS_ХранилищеФайловУчетныхПартий КАК WMS_ХранилищеФайловУчетныхПартий
        |
        |УПОРЯДОЧИТЬ ПО
        |    НомерЗаписи УБЫВ";
    
    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    Если ВыборкаДетальныеЗаписи.Следующий() Тогда
        Возврат ВыборкаДетальныеЗаписи.НомерЗаписи + 1 ;
    Иначе
        Возврат 1;    
    КонецЕсли;
    
КонецФункции
   DrWatson
 
17 - 04.09.18 - 13:45
(13) Проверь на всякий случай, ТранзакцияАктивна() перед возвратом на клиент что выдаёт?
   Krolik Bezobraznik
 
18 - 04.09.18 - 13:46
(17) хм.. активна сейчас буду искать где она начинается
   catena
 
19 - 04.09.18 - 13:48
(7)Добавление записи РС в модуле менеджера РС? Того же самого РС? И в какой же процедуре?
   Krolik Bezobraznik
 
20 - 04.09.18 - 13:49
(17) Доктор, спасибо. Вылечили мою пятничную голову. :) Можно закрывать топ.

Всем спасибо за участие.
   Krolik Bezobraznik
 
21 - 04.09.18 - 13:49
(19) Да



Список тем форума
Рекламное место пустует Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует