Имя: Пароль:
1C
1С v8
док. Корректировка записей регистров. как заполнить програмно?
0 Tata001
 
13.03.12
10:19
Док_корр=Документы.КорректировкаЗаписейРегистров.СоздатьДокумент();
// первонач.сведения об ОС    
    Строка_РС=Док_корр.ТаблицаРегистровСведений.Добавить();
    Строка_РС.Имя=Метаданные.РегистрыСведений.ПервоначальныеСведенияОС.Имя;
    Строка_РС.Представление=Метаданные.РегистрыСведений.ПервоначальныеСведенияОС.Синоним;
   для Каждого Строка_ОС Из ТЧ_Ос Цикл

        НоваяЗапись.Период = Док_корр.Ссылка;
        НоваяЗапись.ОсновноеСредство  = Строка_ОС.ос;
        НоваяЗапись.СпособНачисленияАмортизации = Строка_ОС.СпособАмортизацииБУ;
        НоваяЗапись.ПервоначальнаяСтоимость = Строка_ОС.ПервоначальнаяСтоимостьБУ;
    КонецЦикла;
Док_корр.ПолучитьФорму().ОткрытьМодально();

============
вылетает ошибка
СтраницаПанели = ЭлементыФормы.ПанельРегистровСведений.Страницы.Вставить(ТаблицаРегистровСведений.Индекс(СтрокаТаблицыРегистров), СтрокаТаблицыРегистров.Имя, СтрокаТаблицыРегистров.Представление);
по причине:
Значение индекса выходит за границы диапазона
====
подскажите как правильно,пожалуйста
1 ilpar
 
13.03.12
10:31
(0) в гугл
2 Tata001
 
13.03.12
10:32
(1)была в гугле..про регистр сведений ничего нет
3 Рэйв
 
13.03.12
10:33
(0)Просто создай, запиши документ, а потом добавляй движения и вставляй документ регистратором.
4 thezos
 
13.03.12
10:35
Сделай кнопку на форме документа и по ней заполняй.
5 Tata001
 
13.03.12
10:36
(4) зачем мне типовую конфигурацию трогать !!!
6 Tata001
 
13.03.12
10:37
(3)по регистру накопления всё нормально,открывается документ,
с регистром сведений какой-то косяк...
7 vicof
 
13.03.12
10:50
(3) +1
(6) обрати внимание на табличные части документа корректировки :)
8 Tata001
 
13.03.12
10:53
(7) смотрю ... но пока ничего особого не вижу
9 Рэйв
 
13.03.12
10:54
(6)Может у РС непредусмотрена запись регистратором?:-)
10 Tata001
 
13.03.12
10:54
просто этот кусок тоже не работает
Строка_РС=Док_корр.ТаблицаРегистровСведений.Добавить();
    Строка_РС.Имя=Метаданные.РегистрыСведений.ПервоначальныеСведенияОС.Имя;
    Строка_РС.Представление=Метаданные.РегистрыСведений.ПервоначальныеСведенияОС.Синоним;
11 Tata001
 
13.03.12
10:55
хотя вот это без проблем
//регистр накопления
    строка_РН=Док_корр.ТаблицаРегистровНакопления.Добавить();
    строка_РН.Имя=Метаданные.регистрынакопления.СтоимостьОС.Имя;
    строка_РН.Представление=Метаданные.РегистрыНакопления.СтоимостьОС.Синоним;
12 ОбычныйЧеловек
 
13.03.12
10:57
(10) в чем выражается его неработоспособность?
13 n koretsky
 
13.03.12
11:00
сначала создай документ, заполни в нем все реквизиты, а потом уже создавай набор записей и подставляй регистратором этот документ. пока он не будет записан у тебя полюбасу ничего не выйдет.
14 n koretsky
 
13.03.12
11:00
(13) создай док, заполни реквизиты, сохрани док. а потом все указаное далее.
15 Tata001
 
13.03.12
11:02
я не хочу записывать док,я хочу сразу заполнить и показать пользователю (в идеале)
16 Tata001
 
13.03.12
11:03
(12) не открывается док и выдаёт ошибку... если быы работал,то была бы просто пустая вкладка,верно ведь ?
17 ОбычныйЧеловек
 
13.03.12
11:04
(15) думаю ты не понимаю, о чем только что сказала...
18 Web00001
 
13.03.12
11:05
(0) у ТС есть в конфе док, позволяющий редактировать записи регистров тот у которого ТЧ и есть сам регистр накопления и она его пытается заполнить я правильно понял Tata001?
19 ОбычныйЧеловек
 
13.03.12
11:05
документ КорректировкаЗаписейРегистров лишь отображает движения, следовательно перечитай несколько раз (13)(14)
20 Tata001
 
13.03.12
11:06
(18) Регистр накопления без проблем заполняется и документ открывается тоже без ошибок.

Мне нужно заполнить регистр сведений .
21 Tata001
 
13.03.12
11:07
(17) если в пользовательском режиме срздать документ корректир.регистров, перед добавлением закладки по регистру сведений, документ же не просит его записать
22 Web00001
 
13.03.12
11:08
Кусочек из моей обработки:

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

   Для Каждого СтрокаТЧ Из ЗадолженностьФЛ Цикл
       
       ФормаДока.ЭлементыФормы.ВзаиморасчетыСРаботникамиОрганизаций.ДобавитьСтроку();
       ТекущаяСтрока = ФормаДока.ЭлементыФормы.ВзаиморасчетыСРаботникамиОрганизаций.ТекущиеДанные;
       ТекущаяСтрока.ВидДвижения = ВидДвиженияНакопления.Приход;
       ТекущаяСтрока.Организация = Фирма;
       ТекущаяСтрока.Период = Дата1;
       ТекущаяСтрока.ПериодВзаиморасчетов = Дата1;
       ТекущаяСтрока.СуммаВзаиморасчетов = СтрокаТЧ.Сумма;
       ТекущаяСтрока.ФизЛицо = СтрокаТЧ.Физлицо;
       
   КонецЦикла;
23 Web00001
 
13.03.12
11:09
Здесь одна строка лищняя согласен, но в остальном все должно работать именно так вроде как надо ТС
24 Tata001
 
13.03.12
11:12
всё работает =)))
25 Tata001
 
13.03.12
11:13
добавила строку    Док_корр.Дата=ТекущаяДата();
26 ОбычныйЧеловек
 
13.03.12
11:13
(21) ну та маладец....тогда уж использую ПолучитьФормуНовогоДокумента()
27 Web00001
 
13.03.12
11:15
(24) А где пасиба? Опционально можно добавить "Ты умничка" и все такое.
28 Tata001
 
13.03.12
11:17
спасибо..только у меня не взлетает...форма открывается с пустой страничкой регистра,а при заполнении данными- не летит
29 ОбычныйЧеловек
 
13.03.12
11:18
(28) так ты же не слушаешь, что тебе умные (это я про себя если что) люди пишут.
30 Serg_1960
 
13.03.12
11:19
31 Tata001
 
13.03.12
11:21
(30) у меня нет проблем с регистрами накоплениями,у меня проблема с регистрами сведений
32 Web00001
 
13.03.12
11:21
(28) Что не летит? Открывается с пустой страничкой? Точно данные есть когда добавляешь? Смотри отладчиком, у меня все работает. Уже не первый раз юзаю.
33 Web00001
 
13.03.12
11:22
этот док стоит как док регистратор у регистра сведений который ковыряешь?
34 Tata001
 
13.03.12
11:23
не летит вот это
/ первонач.сведения об ОС    
    Строка_РС=Док_корр.ТаблицаРегистровСведений.Добавить();
    Строка_РС.Имя=Метаданные.РегистрыСведений.ПервоначальныеСведенияОС.Имя;
    Строка_РС.Представление=Метаданные.РегистрыСведений.ПервоначальныеСведенияОС.Синоним;
   
   // параметры амортизации  ОС    
    Строка_РС=Док_корр.ТаблицаРегистровСведений.Добавить();
    Строка_РС.Имя=Метаданные.РегистрыСведений.ПараметрыАмортизацииОС.Имя;
    Строка_РС.Представление=Метаданные.РегистрыСведений.ПараметрыАмортизацииОС.Синоним;
35 Tata001
 
13.03.12
11:24
(32)
а это нормально взлетает
Строка_РС=Док_корр.ТаблицаРегистровСведений.Добавить();
    Строка_РС.Имя=Метаданные.РегистрыСведений.ПервоначальныеСведенияОС.Имя;
    Строка_РС.Представление=Метаданные.РегистрыСведений.ПервоначальныеСведенияОС.Синоним;
36 Web00001
 
13.03.12
11:29
в регистре сведений ПараметрыАмортизацииОС стоит регистратором "Док_корр"?
37 Tata001
 
13.03.12
11:32
(36) вы предлагаете сделать отбор ?
38 ОбычныйЧеловек
 
13.03.12
11:35
(37) он предлагает тебе зайти в конфигуратор и посмотреть является ли добавляемый тобой регистр - регистратором данного документа.
39 Tata001
 
13.03.12
11:39
(38)является
40 Web00001
 
13.03.12
11:43
(39)
если вот это летит
Строка_РС=Док_корр.ТаблицаРегистровСведений.Добавить();
Строка_РС.Имя=Метаданные.РегистрыСведений.ПервоначальныеСведенияОС.Имя;
Строка_РС.Представление=Метаданные.РегистрыСведений.ПервоначальныеСведенияОС.Синоним;

а вот это нет:
Строка_РС=Док_корр.ТаблицаРегистровСведений.Добавить();
Строка_РС.Имя=Метаданные.РегистрыСведений.ПараметрыАмортизацииОС.Имя;
Строка_РС.Представление=Метаданные.РегистрыСведений.ПараметрыАмортизацииОС.Синоним;

Надо смотреть на месте, где ошиблась. А ошибка какая? которая в (0)?
41 Tata001
 
13.03.12
11:48
(39) да
42 Web00001
 
13.03.12
11:49
в (0) категорически не вижу ДобавитьСтроку(); и не могу понять что такое НоваяЗапись.Период = Док_корр.Ссылка; Периодичность регистра по документу? мб в этом причина?
43 Tata001
 
13.03.12
11:49
(40) он не взлетает когда добавляю два регистра,по одному всё нормально
44 Tata001
 
13.03.12
11:50
(42) я заполнение регистра пока убрала
45 Tata001
 
13.03.12
11:50
// первонач.сведения об ОС    
    Строка_РС=Док_корр.ТаблицаРегистровСведений.Добавить();
    Строка_РС.Имя=Метаданные.РегистрыСведений.ПервоначальныеСведенияОС.Имя;
    Строка_РС.Представление=Метаданные.РегистрыСведений.ПервоначальныеСведенияОС.Синоним;
   
   // параметры амортизации  ОС    

    Строка_РС=Док_корр.ТаблицаРегистровСведений.Добавить();
    Строка_РС.Имя=Метаданные.РегистрыСведений.ПараметрыАмортизацииОС.Имя;
    Строка_РС.Представление=Метаданные.РегистрыСведений.ПараметрыАмортизацииОС.Синоним;
===
вот этот текст не взлетает
46 Web00001
 
13.03.12
11:52
кхм до этого молчала однако что по одному норм, а что за конфа? Гляну на док.
47 Tata001
 
13.03.12
11:54
(46)УПП 1.3
48 Web00001
 
13.03.12
12:20
(45) Этот текст взлетает вполне себе норм, данные как добавляешь? есть jabber?
49 Tata001
 
13.03.12
12:28
(48) есть скайп
50 Web00001
 
13.03.12
12:32
в личке мыло, туда логин или сюда если не боишься кого попало
51 Tata001
 
13.03.12
12:32
(48) отправила письмо
52 Web00001
 
13.03.12
12:34
промазала, нет письма
53 Tata001
 
13.03.12
12:35
(52)... я второе выслала,правильное..проверяй =))
54 Web00001
 
13.03.12
12:35
упс а вот и оно :)
55 Web00001
 
13.03.12
12:37
стукнул
AdBlock убивает бесплатный контент. 1Сергей