Имя: Пароль:
1C
1С v8
Почему не происходит запись в регистр сведений
0 volfy
 
16.11.12
16:48
Вот модуль объекта

Процедура ПишемИзМодуляОбъектаЭтогоДокумента(ТЗ) Экспорт
    Движения.ТекущиеРелизыПлатформы.Записывать = Истина;
        Для Каждого Строка Из ТЗ Цикл
            Набор = Движения.ТекущиеРелизыПлатформы.Добавить();
            Набор.Регистратор = Строка.Ссылка;
            Набор.ВерсияКонфигурации = Строка.ВерсияКонфигурации;
            Набор.ВерсияПлатформы = Строка.ВерсияПлатформы;
            Набор.КонфигурацияОбновляемая = Строка.КонфигурацияОбновляемая;
            Набор.МинимальныйРелизПлатформы = Строка.МинимальныйРелизПлатформы;
            Набор.Период = ТекущаяДата();
            Движения.ТекущиеРелизыПлатформы.Записать();
        КонецЦикла;
КонецПроцедуры

Вот модуль формы

......другие функции........

     ЗадатьВопрос =  ПроверитьНаНовыйРелизУКонтрагента(Объект.Ссылка, Объект.Дата);
         
         Если ЗадатьВопрос = "Да" Тогда
           Вариант =   СпроситьУПользователя();
           Если Вариант = "Да" Тогда
               Запись(Объект.Ссылка, Объект.Дата);
           ИначеЕсли Вариант = "Отмена" Тогда
               Отказ = Истина;
           КонецЕсли;
         КонецЕсли;
         
         
     КонецПроцедуры

&НаКлиенте
Функция СпроситьУПользователя()
           Ответ = Вопрос("В табличной части содержаться ранее не используемые конфигурации, добавить новые конфигурации в список?",  РежимДиалогаВопрос.ДаНетОтмена,,,"Конфигурация не найдена.",);
        Если Ответ = КодВозвратаДиалога.Да Тогда
            Возврат "Да";
        ИначеЕсли Ответ = КодВозвратаДиалога.Нет Тогда
            Возврат "Нет";
        ИначеЕсли Ответ = КодВозвратаДиалога.Отмена  Тогда
            Возврат "Отмена";
       КонецЕсли;          
   КонецФункции

&НаСервере
Функция ПроверитьНаНовыйРелизУКонтрагента(ТекущийДокумент, Дата);
   
    Добавляем = "Нет";
   
    Запрос2 = Новый Запрос;
    Запрос2.Текст =
      "ВЫБРАТЬ
      |    ТекущиеРелизыПлатформы.КонфигурацияОбновляемая,
      |    ТекущиеРелизыПлатформы.ВерсияКонфигурации,
      |    ОтчетОПроделаннойРаботе.Ссылка,
      |    ОтчетОПроделаннойРаботе.Конфигурации.(
      |        Платформа,
      |        ВерсияПлатформы,
      |        Конфигурация,
      |        ВерсияКонфигурации
      |    )
      |ИЗ
      |    РегистрСведений.ТекущиеРелизыПлатформы КАК ТекущиеРелизыПлатформы,
      |    Документ.ОтчетОПроделаннойРаботе КАК ОтчетОПроделаннойРаботе
      |ГДЕ
      |    ОтчетОПроделаннойРаботе.Ссылка = &Ссылка";
     Запрос2.УстановитьПараметр("Ссылка", ТекущийДокумент);
     Выборка2 = Запрос2.Выполнить();
    Результат2 = ВЫборка2.Выбрать();
                                     
    ТЗ = Новый ТаблицаЗначений;
    ТЗ.Колонки.Добавить("Ссылка");
    ТЗ.Колонки.Добавить("МинимальныйРелизПлатформы");
    ТЗ.Колонки.Добавить("ВерсияКонфигурации");
    ТЗ.Колонки.Добавить("ВерсияПлатформы");
    ТЗ.Колонки.Добавить("КонфигурацияОбновляемая");
   
     Если Результат2.Количество() = 0 Тогда
        Для Каждого Элемент ИЗ ТекущийДокумент.Конфигурации Цикл    
                Запись = ТЗ.Добавить();
                Запись.Ссылка = ТекущийДокумент;
                Запись.ВерсияКонфигурации = Элемент.ВерсияКонфигурации;
                Запись.ВерсияПлатформы = Элемент.Платформа;
                Запись.КонфигурацияОбновляемая = Элемент.Конфигурация;
       КонецЦикла;
    КонецЕсли;    
 
    Пока Результат2.Следующий() Цикл
       
        Док = Результат2.Ссылка.ПолучитьОбъект();
     
    Для Каждого Элемент ИЗ Док.Конфигурации Цикл    

            Если НЕ Результат2.ВерсияКонфигурации = Элемент.ВерсияКонфигурации Тогда
                               
                Запись = ТЗ.Добавить();
                Запись.МинимальныйРелизПлатформы = Элемент.ВерсияПлатформы;
                Запись.Ссылка = ТекущийДокумент;
                Запись.ВерсияКонфигурации = Элемент.ВерсияКонфигурации;
                Запись.ВерсияПлатформы = Элемент.Платформа;
                Запись.КонфигурацияОбновляемая = Элемент.Конфигурация;
           КонецЕсли;    
       КонецЦикла;
       КонецЦикла;    
   
       Если ТЗ.Количество() > 0 Тогда
         Возврат "Да";
       КонецЕсли;

КонецФункции
       
     &НаСервере
Процедура Запись(ТекущийДокумент, Дата) Экспорт
         
   Запрос2 = Новый Запрос;
   Запрос2.Текст =
     "ВЫБРАТЬ
     |    ТекущиеРелизыПлатформы.КонфигурацияОбновляемая,
     |    ТекущиеРелизыПлатформы.ВерсияКонфигурации,
     |    ОтчетОПроделаннойРаботе.Ссылка,
     |    ОтчетОПроделаннойРаботе.Конфигурации.(
     |        Платформа,
     |        ВерсияПлатформы,
     |        Конфигурация,
     |        ВерсияКонфигурации
     |    )
     |ИЗ
     |    РегистрСведений.ТекущиеРелизыПлатформы КАК ТекущиеРелизыПлатформы,
     |    Документ.ОтчетОПроделаннойРаботе КАК ОтчетОПроделаннойРаботе
     |ГДЕ
     |     ОтчетОПроделаннойРаботе.Ссылка = &Ссылка";
    Запрос2.УстановитьПараметр("Ссылка", ТекущийДокумент);
    Выборка2 = Запрос2.Выполнить();
   Результат2 = ВЫборка2.Выбрать();

    ТЗ = Новый ТаблицаЗначений;
    ТЗ.Колонки.Добавить("Ссылка");
     ТЗ.Колонки.Добавить("МинимальныйРелизПлатформы");
    ТЗ.Колонки.Добавить("ВерсияКонфигурации");
    ТЗ.Колонки.Добавить("ВерсияПлатформы");
    ТЗ.Колонки.Добавить("КонфигурацияОбновляемая");
   
    Если Результат2.Количество() = 0 Тогда
           Для Каждого Элемент ИЗ ТекущийДокумент.Конфигурации Цикл    
                Запись = ТЗ.Добавить();
                Запись.МинимальныйРелизПлатформы = Элемент.ВерсияПлатформы;
                Запись.Ссылка = ТекущийДокумент;
                Запись.ВерсияКонфигурации = Элемент.ВерсияКонфигурации;
                Запись.ВерсияПлатформы = Элемент.Платформа;
                Запись.КонфигурацияОбновляемая = Элемент.Конфигурация;
           КонецЦикла;    
          КонецЕсли;

    Пока Результат2.Следующий() Цикл
                 
        Док = Результат2.Ссылка.ПолучитьОбъект();
               
        Для Каждого Элемент ИЗ Док.Конфигурации Цикл    
            Если НЕ Результат2.ВерсияКонфигурации = Элемент.ВерсияКонфигурации Тогда
               
                Запись = ТЗ.Добавить();
                Запись.МинимальныйРелизПлатформы = Элемент.ВерсияПлатформы;
                Запись.Ссылка = ТекущийДокумент;
                Запись.ВерсияКонфигурации = Элемент.ВерсияКонфигурации;
                Запись.ВерсияПлатформы = Элемент.Платформа;
                Запись.КонфигурацияОбновляемая = Элемент.Конфигурация;

            КонецЕсли;  
        КонецЦикла;
    КонецЦикла;
   
           Док = РеквизитФормыВЗначение("Объект");
           Док.ПишемИзМодуляОбъектаЭтогоДокумента(ТЗ);
   КонецПроцедуры




Всё проходит данные есть ....механизм отрабатывает нормально режим подчинения - регистратору, периодичности нет... почему не происходит запись?
1 Eugene_life
 
16.11.12
16:49
(0) Просто сегодня пятница. Да и конец света близок... Забей.
2 volfy
 
16.11.12
16:51
(1) Так и скажи что сам не знаешь )) щас через менеджер записи попробую
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс