Несколько конкретных примеров обработки регистров сведений (1С: Программисту: Регистры сведений) — 1C-h
 

Несколько конкретных примеров обработки регистров сведений (1С: Программисту: Регистры сведений)

13

Примеры работы с регистами сведений см. также в Шпаргалке по программированию для системы 1С:Предприятие 8.2

Оглавление
1. Как из регистра сведений «РасчетчикиЗарплатыОрганизации» получить в виде массива всех расчетчиков зарплаты определенного подразделения организации
2. Как добавить запись в непериодический независимый регистр сведений
3. Как считать содержимое непериодического независимого регистра сведений «СобственныеКонтрагенты»
4. Как удалить записи независимого регистра сведений с отбором по конкретной организации
5. Как добавить запись в периодический независимый регистр сведений
6. Как прочитать (изменить) записи в периодическом независимом регистре сведений
7. Как удалить записи в периодическом независимом регистре сведений
8. Как в периодическом независимом регистре сведений «КурсыВалют» удалить все записи по валютам с наименованиями «EUR» и «USD», период которых меньше 01 января 2005 года
9. Как прочитать данные, актуальные на определенную дату, из регистра сведений «Курсы валют» с отбором по нескольким валютам (отбор по измерениям)
10. Как поменять период у записей периодического независимого регистра, соответствующих ряду условий
11. Как «сделать периодическим» реквизит уже заполненного справочника
12. Как добавить записи в регистр сведений, подчиненный регистратору
13. Как прочитать (изменить) записи в регистре сведений, подчиненном регистратору
14. Как удалить записи из регистра сведений, подчиненного регистратору
15. Как добавить или изменить существующую запись периодического регистра сведений, подчиненного регистратору

……………….
1. Вопрос Как из регистра сведений «РасчетчикиЗарплатыОрганизации» получить в виде массива всех расчетчиков зарплаты определенного подразделения организации.
Ответ

Способ 1

Функция ПолучитьМассивРасчетчиков(Подразделение) 

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

                   Возврат МассивРасчетчиков; 

КонецФункции

Способ 2

Функция ПолучитьМассивРасчетчиков(Подразделение) 

                   Запрос = Новый Запрос;
                   Запрос.Текст = "
                   |ВЫБРАТЬ
                   |                    РасчетчикиЗарплатыОрганизации.Пользователь КАК Расчетчик
                   |ИЗ
                   |                    РегистрСведений.РасчетчикиЗарплатыОрганизации КАК 

РасчетчикиЗарплатыОрганизации
                   |ГДЕ
                   |                    РасчетчикиЗарплатыОрганизации.ПодразделениеОрганизации = 

&Подразделение"; 

                   Запрос.УстановитьПараметр("Подразделение", Подразделение); 

                   Результат = Запрос.Выполнить();
                   Выборка = Результат.Выбрать(); 

                   МассивРасчетчиков = Новый Массив;
                   Пока Выборка.Следующий() Цикл
                                       МассивРасчетчиков.Добавить(Выборка.Расчетчик);
                   КонецЦикла; 

                   Возврат МассивРасчетчиков; 

КонецФункции

К оглавлению…
2. Вопрос Как добавить запись в непериодический независимый регистр сведений
Ответ

НаборЗаписей = РегистрыСведений.ЗначенияСвойств.СоздатьНаборЗаписей(); 

НаборЗаписей.Отбор.Номенклатура.Установить(ТекущаяНоменклатура);
НаборЗаписей.Отбор.Свойство.Установить(ТекущееСвойство); 

НоваяЗапись = НаборЗаписей.Добавить();
НоваяЗапись. Номенклатура = ТекущаяНоменклатура;
НоваяЗапись.Свойство = ТекущееСвойство;
НоваяЗапись.Значение = ТекущееЗначение; 

НаборЗаписей.Записать();

К оглавлению…
3. Вопрос Как считать содержимое непериодического независимого регистра сведений «СобственныеКонтрагенты»
Ответ

НаборЗаписей = РегистрыСведений.СобственныеКонтрагенты.СоздатьНаборЗаписей();
НаборЗаписей.Прочитать(); 

// Перебрать записи в цикле…
Для Каждого Запись из НаборЗаписей Цикл
РегистрКонтрагент = Запись.Контрагент;
РегистрВидСвязи = Запись.ВидСвязи;
РегистрОбъект = Запись.Объект;
КонецЦикла; 

// … или выгрузить записи в таблицу значений.
ТаблицаЗаписей = НаборЗаписей.Выгрузить();
ВЫБРАТЬ
                   *
ИЗ
                   РегистрыСведений.СобственныеКонтрагенты
Как удалить все записи из независимого регистра сведений?
НаборЗаписей = РегистрыСведений.ТорговоеОборудование.СоздатьНаборЗаписей();
НаборЗаписей.Записать();

К оглавлению…
4. Вопрос Как удалить записи независимого регистра сведений с отбором по конкретной организации
Ответ

НаборЗаписей = РегистрыСведений.ОбъектыСтроительстваОрганизаций.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Организация.Установить(УдаляемаяОрганизация);
НаборЗаписей.Записать();

К оглавлению…
5. Вопрос Как добавить запись в периодический независимый регистр сведений
Ответ

НаборЗаписей = РегистрыСведений.КурсыВалют.СоздатьНаборЗаписей(); 

НаборЗаписей.Отбор.Валюта.Установить(ТекущаяВалюта);
НаборЗаписей.Отбор.Период.Установить(ТекущаяДата); 

НовЗапись = НаборЗаписей.Добавить();
НовЗапись.Валюта = ТекущаяВалюта;
НовЗапись.Период = ТекущаяДата;
НовЗапись.Курс = ТекущийКурс;
НовЗапись.Кратность = ТекущаяКратность; 

НаборЗаписей.Записать(Истина);

К оглавлению…
6. Вопрос Как прочитать (изменить) записи в периодическом независимом регистре сведений
Ответ

НаборЗаписей = РегистрыСведений.Валюты.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Период.Установить(ДатаЗаписи); 

НаборЗаписей.Прочитать(); 

Для Каждого Запись Из НаборЗаписей Цикл 

                   // Чтение и сообщение данных полей записи.
                   Сообщить(Строка(Запись.Период) + " " + Строка(Запись.Валюта) + " " + 

Строка(Запись.Курс)); 

                   // Изменение данных полей записи.
                   Запись.Курс = 0; 

КонецЦикла; 

НаборЗаписей.Записать();

К оглавлению…
7. Вопрос Как удалить записи в периодическом независимом регистре сведений
Ответ

НаборЗаписей = РегистрыСведений.КурсыВалют.СоздатьНаборЗаписей();
НаборЗаписей.Записать();

К оглавлению…
8. Вопрос Как в периодическом независимом регистре сведений «КурсыВалют» удалить все записи по валютам с наименованиями «EUR» и «USD», период которых меньше 01 января 2005 года
Ответ

Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
|                  *
|ИЗ
|                  РегистрСведений.КурсыВалют КАК КурсыВалют
|ГДЕ
|                  (КурсыВалют.Период >= ДАТАВРЕМЯ(2005, 1, 1)
|                  ИЛИ
|                  НЕ(КурсыВалют.Валюта.Наименование ПОДОБНО ""USD"")
|                  И
|                  НЕ(КурсыВалют.Валюта.Наименование ПОДОБНО ""EUR""))";
ТаблицаОставляемыхЗаписей = Запрос.Выполнить().Выгрузить(); 

НаборЗаписей = РегистрыСведений.КурсыВалют.СоздатьНаборЗаписей();
НаборЗаписей.Загрузить(ТаблицаОставляемыхЗаписей);
НаборЗаписей.Записать();

К оглавлению…
9. Вопрос Как прочитать данные, актуальные на определенную дату, из регистра сведений «Курсы валют» с отбором по нескольким валютам (отбор по измерениям)
Ответ

Запрос = Новый Запрос;
МассивВалют = Новый Массив;
МассивВалют.Добавить(Валюта1);
МассивВалют.Добавить(Валюта2); 

Запрос.УстановитьПараметр("МассивВалют", МассивВалют);
Запрос.УстановитьПараметр("ДатаПолучения", ДатаПолучения); 

Запрос.Текст = "
|ВЫБРАТЬ
|                  ВалютыСрезПоследних.Валюта,
|                  ВалютыСрезПоследних.Курс
|ИЗ
|                  РегистрСведений.КурсыВалют.СрезПоследних(&ДатаПолучения, Валюта В 

(&МассивВалют)) КАК ВалютыСрезПоследних"; 

ТаблицаКурсов = Запрос.Выполнить().Выгрузить();

К оглавлению…
10. Вопрос Как поменять период у записей периодического независимого регистра, соответствующих ряду условий
Ответ

Процедура ЗаменаПериода() 

                   Запрос = Новый Запрос;
                   Запрос.Текст = "ВЫБРАТЬ
                   |                    ОтветственныеЛицаОрганизации.Период,
                   |                    ОтветственныеЛицаОрганизации.СтруктурнаяЕдиница,
                   |                    ОтветственныеЛицаОрганизации.ОтветственноеЛицо
                   |ИЗ
                   |                    РегистрСведений.ОтветственныеЛицаОрганизации КАК 

ОтветственныеЛицаОрганизации
                   |ГДЕ
                   |                    ОтветственныеЛицаОрганизации.Период <= ДАТАВРЕМЯ(2005, 1, 1)
                   |                    И
                   |                    ОтветственныеЛицаОрганизации.СтруктурнаяЕдиница.Наименование | ПОДОБНО 

"Групп-Трейдинг"
                   |                    И
                   |                    (ОтветственныеЛицаОрганизации.Должность.Наименование ЕСТЬ NULL
                   |                                        ИЛИ
                   |                                        НЕ(ОтветственныеЛицаОрганизации.Должность.Наименование | ПОДОБНО 

"Продавец"
                   |                                                            ИЛИ
                   |                                                            ОтветственныеЛицаОрганизации.Должность.Наименование | 

ПОДОБНО "Кладовщик"))"; 

                   Результат = Запрос.Выполнить();
                   Выборка = Результат.Выбрать(); 

                   Запись = РегистрыСведений.ОтветственныеЛицаОрганизации.СоздатьМенеджерЗаписи(); 

                   Пока Выборка.Следующий() Цикл
                                       Запись.Период = Выборка.Период;
                                       Запись.СтруктурнаяЕдиница = Выборка.СтруктурнаяЕдиница;
                                       Запись.ОтветственноеЛицо = Выборка.ОтветственноеЛицо;

                                       Запись.Прочитать(); 

                                       Если Запись.Выбран() Тогда
                                                           Запись.Период = Дата(2004, 1, 1);
                                                           Запись.Записать();
                                       КонецЕсли;
                   КонецЦикла; 

КонецПроцедуры;

К оглавлению...
11. Вопрос Как "сделать периодическим" реквизит уже заполненного справочника
Ответ

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

Запрос.УстановитьПараметр("Ответственный", Справочники.Пользователи.ПустаяСсылка());
Запрос.УстановитьПараметр("ДатаУстановки", Дата(2000,1,1)); 

ТаблицаРезультат = Запрос.Выполнить().Выгрузить(); 

НаборЗаписей = РегистрыСведений.ЗакреплениеПроектов.СоздатьНаборЗаписей();
НаборЗаписей.Загрузить(ТаблицаРезультат);
НаборЗаписей.Записать();

К оглавлению...
12. Вопрос Как добавить записи в регистр сведений, подчиненный регистратору
Ответ

НаборЗаписей = РегистрыСведений.ЛимитыВозвратнойТары.СоздатьНаборЗаписей(); 

НаборЗаписей.Отбор.Регистратор.Установить(ВыбранныйРегистратор); 

НоваяЗапись = НаборЗаписей.Добавить();
НоваяЗапись.Период = ВыбранныйРегистратор.Дата;
НоваяЗапись.Номенклатура = ВыбраннаяНоменклатура;
НоваяЗапись.ДоговорКонтрагента = ВыбранныйДоговор;
НоваяЗапись.ЛимитПоставщика = 50; 

НаборЗаписей.Записать();
НаборЗаписей = РегистрыСведений.ЛимитыВозвратнойТары.СоздатьНаборЗаписей(); 

НаборЗаписей.Отбор.Регистратор.Установить(ВыбранныйРегистратор); 

НоваяЗапись = НаборЗаписей.Добавить();
НоваяЗапись.Период = ВыбранныйРегистратор.Дата;
НоваяЗапись.Номенклатура = ВыбраннаяНоменклатура;
НоваяЗапись.ДоговорКонтрагента = ВыбранныйДоговор;
НоваяЗапись.ЛимитПокупателю = 25; 

НаборЗаписей.Записать(Ложь);

К оглавлению...
13. Вопрос Как прочитать (изменить) записи в регистре сведений, подчиненном регистратору
Ответ

НаборЗаписей = РегистрыСведений.ЦеныНоменклатуры.СоздатьНаборЗаписей(); 

НаборЗаписей.Отбор.Регистратор.Установить(ВыбранныйРегистратор); 

НаборЗаписей.Прочитать();
Для Каждого Запись Из НаборЗаписей Цикл 

                   // Чтение и сообщение данных полей записи.
                   Сообщить(Строка(Запись.Период) + " " + Строка(Запись.ТипЦен) +" "+ 

Строка(Запись.Номенклатура) + " " + Строка(Запись.Цена) + " " + 

Строка(Запись.ПроцентСкидкиНаценки)); 

                   // Изменение данных полей записи.
                   Запись.ПроцентСкидкиНаценки = 0;
КонецЦикла; 

НаборЗаписей.Записать();

К оглавлению...
14. Вопрос Как удалить записи из регистра сведений, подчиненного регистратору
Ответ

Запрос = Новый Запрос;
Запрос.Текст = "
|                  ВЫБРАТЬ
|                  ЦеныНоменклатурыКонтрагентов.Регистратор
|ИЗ
|                  РегистрСведений.ЦеныНоменклатурыКонтрагентов КАК ЦеныНоменклатурыКонтрагентов"; 

Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать(); 

НаборЗаписей = РегистрыСведений.ЦеныНоменклатурыКонтрагентов.СоздатьНаборЗаписей();
Пока Выборка.Следующий() Цикл
                   НаборЗаписей.Отбор.Регистратор.Установить(Выборка.Регистратор);
                   НаборЗаписей.Записать();
КонецЦикла;

К оглавлению...
15. Вопрос Как добавить или изменить существующую запись периодического регистра сведений, подчиненного регистратору
Ответ

	// Позиционируемся на существующем регистраторе или создаем новый с номером КД
	ДокПД = Документы.ПереносДанных.НайтиПоНомеру("КД");
	
	Если ДокПД = Документы.ПереносДанных.ПустаяСсылка() Тогда // такой документ еще не создавался
		ДокПД = Документы.ПереносДанных.СоздатьДокумент();
		ДокПД.Дата = ДатаИзСтроки("01.01.2014");
		//уник
		ДокПД.Номер = "КД";
		
		ДокПД.ПериодРегистрации = ДатаИзСтроки("01.01.2014");
		ДокПД.Организация = Справочники.Организации.НайтиПоКоду("1");
		СтрокаРегистра = ДокПД.ТаблицаРегистровСведений.Добавить();
		//уник
		СтрокаРегистра.Имя = "РаботникиОрганизаций";
		СтрокаРегистра.Представление = "Работники";
		
		ДокПД.Записать();
	Иначе
		ДокПД = ДокПД.ПолучитьОбъект();
		// по-хорошему, надо бы очистить его движения до загрузки, но не факт...
	КонецЕсли;
	
	НаборЗаписей = РегистрыСведений.РаботникиОрганизаций.СоздатьНаборЗаписей();
	
	// тут у нас цикл, в котором получаем параметры для заполнения данных строки регистра сведений:
	Пока а=1 Цикл
		
		ЗаписьНайдена = Ложь;
		Если НаборЗаписейПД.Количество() <> 0 Тогда
			Для Каждого Запись ИЗ НаборЗаписейПД Цикл
				// проверка набора измерений, в нашем примере всего два измерения у регистра: Сотрудник и Организация
				// проверка делается для того. чтобы не пытаться создать еще одну запись с тем же набром измерений
				// в этом примере в случае, если такая запись уже есть в регистре, мы ее перезаполним новыми ресурсами и реквизитами
				Если Запись.Сотрудник = Сотр И Запись.Организация = Орг Тогда 
					НоваяЗапись = Запись;
					ЗаписьНайдена = Истина;
					Прервать;
					//Запись = НаборЗаписейПД.Получить(Сч);
				КонецЕсли;
			КонецЦикла;
			Если НЕ ЗаписьНайдена Тогда
				НоваяЗапись = НаборЗаписейПД.Добавить();
			КонецЕсли;
		Иначе
			НоваяЗапись = НаборЗаписейПД.Добавить();
		КонецЕсли;
		
		// Все, здесь у нас НоваяЗапись - это или позиция на уже существующей, или действительно новая
		// и теперь осталось перезаполнить ее реквизиты и записать
		
		// Свойства
		//НазваниеКолонки9 = "Период";
		ДатаПер									= ДатаИзСтроки(ИД9);
		НоваяЗапись.Период						=ДатаПер;
		
		// Измерения
		НоваяЗапись.Сотрудник					= Сотр;
		НоваяЗапись.Организация					= Орг;
		
		
		// Ресурсы
		НоваяЗапись.ЗанимаемыхСтавок			= ЗанимаемыхСтавок;
		НоваяЗапись.ОбособленноеПодразделение	= Орг;
		НоваяЗапись.ПодразделениеОрганизации	= Подразделение;
		НоваяЗапись.Должность					= Должность;
		НоваяЗапись.ГрафикРаботы				= ГрафикРаботы;
		НоваяЗапись.ПричинаИзмененияСостояния	= ПричинаИзменения;
		
		//Реквизиты
		НоваяЗапись.ПервичныйДокумент			= ПервичныйДокумент;
	КонецЦикла;
	// записываем набор записей за пределами цикла, т.к. процедуры "при записи" обычно отжирают много времени		
	НаборЗаписейПД.Записать();
	КонецЕсли;
	докПД.Записать(); // если это сейчас не сделать, то придется вынести за пределы цикла получение документа и набора записей по нему, теряется читабельность

13 thoughts on “Несколько конкретных примеров обработки регистров сведений (1С: Программисту: Регистры сведений)

  1. наиболее верный вариант 🙂
    Функция ПолучитьМассивРасчетчиков(Подразделение)

    Запрос = Новый Запрос;
    Запрос.Текст = »
    |ВЫБРАТЬ
    | РасчетчикиЗарплатыОрганизации.Пользователь КАК Расчетчик
    |ИЗ
    | РегистрСведений.РасчетчикиЗарплатыОрганизации КАК

    РасчетчикиЗарплатыОрганизации
    |ГДЕ
    | РасчетчикиЗарплатыОрганизации.ПодразделениеОрганизации =

    &Подразделение»;

    Запрос.УстановитьПараметр(«Подразделение», Подразделение);

    Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку(«Расчетчик»);

    КонецФункции

  2. НаборЗаписей = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
    НаборЗаписей.Отбор.Объект.Установить(НовАг.Ссылка);

    НоваяЗапись = НаборЗаписей.Добавить();
    НоваяЗапись.Объект = НовАг.Ссылка;
    НоваяЗапись.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес;
    НоваяЗапись.Вид = Справочники.ВидыКонтактнойИнформации.ФактАдресКонтрагента;
    НоваяЗапись.Представление = Текст.ПолучитьСтроку(ном+6); // физический адрес
    НоваяЗапись.Вид = Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента;
    НоваяЗапись.Представление = Текст.ПолучитьСтроку(ном+7); // юридический адрес
    НоваяЗапись.Вид = Справочники.ВидыКонтактнойИнформации.ТелефонКонтрагента;
    НоваяЗапись.Представление = Текст.ПолучитьСтроку(ном+8); // телефон
    НаборЗаписей.Записать();

    В таком виде, записывает в регистр только последнюю запись, т.е. телефон. Как сделать, чтобы вносились все данные, т.е. юрАдрес, фактичАдрес и телефон ?
    Заранее огромное спасибо всем, кто откликнется…

    1. У регистра только одно измерение — «Объект»?
      Если измерением является только Объект, а остальное (Тип,Вид ,Представление)- ресурсы или реквизиты, то ваш пример не решаем. Регистр сведений всегда содержит не более одной строки с конкретными значениями набора измерений. В этом его суть.

      Подробнее см. тут: http://www.1c-h.ru/?p=1038

        1. Вот так получится:

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

          НоваяЗапись = НаборЗаписей.Добавить();
          НоваяЗапись.Объект = НовАг.Ссылка;
          НоваяЗапись.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес;
          НоваяЗапись.Вид = Справочники.ВидыКонтактнойИнформации.ФактАдресКонтрагента;

          НоваяЗапись.Представление = Текст.ПолучитьСтроку(ном+6); // физический адрес
          НаборЗаписей.Записать();

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

          НоваяЗапись = НаборЗаписей.Добавить();
          НоваяЗапись.Объект = НовАг.Ссылка;
          НоваяЗапись.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес;
          НоваяЗапись.Вид = Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента;

          НоваяЗапись.Представление = Текст.ПолучитьСтроку(ном+7); // юридический адрес
          НаборЗаписей.Записать();

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

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

          НоваяЗапись.Представление = Текст.ПолучитьСтроку(ном+8); // телефон
          НаборЗаписей.Записать();

  3. штк = РегистрыСведений.Штрихкоды.СоздатьМенеджерЗаписи();
    штк.Владелец = тов.Ссылка;
    штк.ЕдиницаИзмерения = ед.Ссылка;
    штк.Прочитать();
    Сообшить (штк.Выбран()); // возвращает ложь, хотя по указанным параметрам запись существует. В чем может быть причина?

    1. 1) Регистр сведений независимый?
      2) У регистра только два измерения? Владелец и ЕдиницаИзмерения?
      3) И еще, типы значения у измерений какие? Не составные?

  4. Почему после исполнении модуля добавления записей в независимый регистр (в точном соответствием с ответом на вопрос №2) -регистр полностью остается пустой. Ни одной записи не видно. (При просмотре все отборы отключены)

    1. Чтобы ответить, нужно знать точную структуру регистра и видеть исполняемый код… Попробуйте с помощью отладчика смотреть…

  5. Измерения регистра — это то, в каких разрезах требуется хранение информации. Ресурсы регистра — это количественные или суммовые данные, которые хранятся в регистре.

  6. Как видно, в коде отбираются все записи регистра сведений, относящиеся к текущему выгружаемому Физическому лицу, а полученная выборка обходится в цикле.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Next Post

Почему из Управления Складом не выгружается файл приемки (файл "Заявка на приемку" не найден) (1С: Управление торговлей)

Ср Ноя 10 , 2010
Вопрос: Почему из Управления Складом не выгружается файл приемки, файл переносится в каталог «плохих файлов» с комментариями, что «файл Заявка на приемку не найден». Что надо сделать, чтобы приемка выгрузилась правильно? Ответ Нужно найти в базе «Управление Торговлей» документ «Заявка на приемку», проверить, чтобы он не был помечен на удаление […]