1с как изменить регистр накопления
Перейти к содержимому

1с как изменить регистр накопления

  • автор:

Изменение записи в регистре накопления

Народ, возможно ли программно изменить запись движения в регистре накопления?

Например — есть такая запись:

Регистратор. количество
документ1 5 — было
документ1 2 — стало

а в каких случаях это необходимо?

партионный учет считается очень медленно — партий более 70 тыс.
приходит заявка — формируется отгрузка — документ с партиями (количество в которых не равно нулю)

пересчет количества номенклатуры на текущий момент — затруднительно.

думаю сделать просто «вычет» количества по партии, а не создавать движение «расход».

или подскажите как сделать по-другому. каждая партия имеет свой уникальный ид.

Номенклатуры порядка 10-15 тыс. на момент внесения остатков (точка «старта») — внесено более 70 тыс партий.(приход).

после этого — пользователь загружает заявку (около 150-200 позиций номенклатуры с заданными количествами) и программа начинает автоматом «набирать» из существующих непустых партий (считаем по остаткам) необходимое количество по учету фифо и сроку годности.

Сейчас все это я реализовал через подсчет остатков приход/расход, работает достаточно медленно.

Сначала я определяю все партии этой номенклатуры, затем определяю для каждой партии пустая она или нет (есть ли движения по ид), выбираю «непустые» — делаю расход по ид этих партий. и так для каждой из 150-200 позиций.

думаю, если не считать остатки по приходу/расходу, а сразу вносить изменения в «приход» при проведении документа реализации, то можно будет сразу выбирать непустые партии и набирать количество.

(9)Подскажи как программно сделать запись в документе «расхода», чтобы «проведение» только изменяло параметр в регистре строчке записи партии — не могу пока найти ни в книге, ни в инете.

Или хотя бы как вообще программно поменять запись в регистре (не меняя регистратора)

Вообще была идея сделать это через регистр сведений. не столько важна «история» системы, сколько быстрая работа .

(12) ты говоришь, о том, что если я сначала ввожу партию «документ 1» (кол-во 10), затем «как-то программно» сокращаю эту партию до (кол-во 2), а потом перепровожу «документ 1» — количество становиться опять 10?

(14) Особенность партионного учета — если ты перепроводишь какой-то документ внесенный раннее — нужно перепровести все документы (прочитал где-то, да это и понятно, иначе последовательности пропадут);

НаборЗаписей — такого не нашел в СП.
Нашел

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

где-бы взять примерчик по понятнее.

и в общем — возможен ли другой подход для убыстрения работы?

Запрос=Новый Запрос;
Запрос.Текст=
«ВЫБРАТЬ
| ТоварыНаСкладах.Период как Период,
| ТоварыНаСкладах.Регистратор как Регистратор,
| ТоварыНаСкладах.Количество как Количество
|ИЗ
| РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
| ГДЕ
| ТоварыНаСкладах.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
|И ТоварыНаСкладах.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг «;

Запрос.УстановитьПараметр(«ДатаНачала», НачПериода);
Запрос.УстановитьПараметр(«ДатаОкончания», КонПериода);

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

Запрос=Новый Запрос;
Запрос.Текст=
«ВЫБРАТЬ
| ТоварыНаСкладах.Период как Период,
| ТоварыНаСкладах.Регистратор как Регистратор,
| ТоварыНаСкладах.Количество как Количество
|ИЗ
| РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
| ГДЕ
| ТоварыНаСкладах.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
|И ТоварыНаСкладах.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг «;

Запрос.УстановитьПараметр(«ДатаНачала», НачПериода);
Запрос.УстановитьПараметр(«ДатаОкончания», КонПериода);

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

Запрос=Новый Запрос;
Запрос.Текст=
«ВЫБРАТЬ
| ТоварыНаСкладах.Период как Период,
| ТоварыНаСкладах.Регистратор как Регистратор,
| ТоварыНаСкладах.Количество как Количество
|ИЗ
| РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
| ГДЕ
| ТоварыНаСкладах.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
|И ТоварыНаСкладах.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг «;

Запрос.УстановитьПараметр(«ДатаНачала», НачПериода);
Запрос.УстановитьПараметр(«ДатаОкончания», КонПериода);

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

ВыборСуществующихПартий = Новый Запрос(«ВЫБРАТЬ
| СкладскойРегистр.Ид КАК Ид,
| СкладскойРегистр.Количество КАК Колво
|ИЗ
| РегистрНакопления.СкладскойРегистр КАК СкладскойРегистр
|ГДЕ
| СкладскойРегистр.Артикул = &Артикул
| И СкладскойРегистр.ВидДвижения = &ВидДвижения
| И СкладскойРегистр.Количество > 0
|
|УПОРЯДОЧИТЬ ПО
| СкладскойРегистр.СрокГодности»);

ВыборСуществующихПартий.УстановитьПараметр(«Артикул»,ВыбранныйАртикул);
ВыборСуществующихПартий.УстановитьПараметр(«ВидДвижения», ВидДвиженияНакопления.Приход);
Результат = ВыборСуществующихПартий.Выполнить().Выбрать();

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

//Сообщить(Результат.Ид+», «+Результат.Колво);
НаборЗаписей.Отбор.Ид.Установить(Результат.Ид);
НаборЗаписей.Прочитать();

Работа с регистрами накопления

Регистр накопления предназначены для хранения числовых показателей в разрезе нескольких измерений и, при необходимости, в разрезе времени.

Добавление записей в регистр накопления

Для добавления движения в регистр накопления необходимо создать набор записей, установить отбор по регистратору, добавить запись и заполнить значениями. Если требуется добавить несколько записей – добавление производится в цикле.

Удаление записей из регистра накопления

Удаление всех записей по регистратору

Для удаления всех записей из регистра накоплений по регистратору необходимо создать пустой набор записей, установить отбор по регистратору и записать его.

Удаление части записей по регистратору

Очень часто нужно удалить не все записи по регистратору, а только часть из них. Для этого необходимо создать пустой набор записей, установить отбор по регистратору и считать отобранные записи из базы. После чего нужно обойти отобранные записи и удалить из набора .

Изменение записи в регистре накопления

Изменение записи по регистратору аналогично удалению части записей, только запись не удаляется, а изменяется.

1с как изменить регистр накопления

Описание:

Регистры накопления в системе 1С:Предприятие используются для накопления информации о наличии и движении средств — товарных, денежных и других. Информация о хозяйственных операциях в регистры накопления вводится с использованием документов (регистраторов) и используется, например, для получения отчетных форм.

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

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

В системе 1С:Предприятие возможно использование регистров накопления двух типов: регистры остатков и регистры оборотов. Для регистра остатков методы встроенного языка позволяют получить остатки регистра накопления на заданный момент времени. Есть возможность фильтрации по значениям измерений, а также получения остатков в разрезе других измерений. Регистры оборотов предназначены для хранения информации, для которой понятие остатка лишено смысла, например, сумм продаж в разрезе покупателей.

В программных модулях для общих действий над регистром накопления (получение остатков и оборотов по данным регистра накопления, поиска нужных записей, формирования выборок, создания форм и макетов) служит объект РегистрНакопленияМенеджер.<Имя регистра накопления>. Для считывания и занесения набора записей в базу данных по определенному условию отбора служит объект РегистрНакопленияНаборЗаписей.<Имя регистра накопления> Для динамического обхода записей регистра служит объект РегистрНакопленияВыборка.<Имя регистра накопления>.

Как изменить регистры в 1С?

Однако в 1С:Предприятии 8 существует возможность изменять записи регистров без участия документа.Таким образом, чтобы изменить записи регистра необходимо:

  • создать набор записей;
  • установить отбор по определенному регистратору;
  • прочитать набор;
  • изменить записи набора;
  • записать набор.

Как сделать корректировку записей регистров?

Для того чтобы оформить документ «Корректировка регистров», необходимо выполнить следующие действия:

  • Меню: НСИ и администрирование — Начальное заполнение — Корректировка записей регистров.
  • Нажмите Создать — Настройка состава регистров и отметьте флагами необходимые регистры (рис.

Как поправить регистры в 1С?

Для внесения изменений в регистры необходимо в командной панели документа Операция нажать на кнопку Еще, выбрать опцию Выбор регистров, перейти на закладку Регистры накопления или Регистры сведений и выбрать для корректировки требуемые регистры.

Где в 1С 8.3 посмотреть данные регистров накопления?

Если в пользовательском режиме мы зайдем в раздел «Все функции», то там тоже можем увидеть ветку «Регистры накопления». Регистр накопления — это таблица, накапливающая информацию из движения документов (приход/расход, обороты).

Что такое Корректировка записей регистров?

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

Как изменить запись в регистре накопления 1с?

Для изменения записей регистра можно использовать и набор записей созданный с помощью менеджера регистра.Таким образом, чтобы изменить записи регистра необходимо:

  • создать набор записей;
  • установить отбор по определенному регистратору;
  • прочитать набор;
  • изменить записи набора;
  • записать набор.

Как обнулить регистры в 1с?

Обработка очистка регистра сведений в 1С 8.3

Чтобы ею воспользоваться, ее необходимо открыть в пользовательском режиме через пункт меню «Файл» — «Открыть». Указываем имя регистра, который нам нужно очистить (обязательно уточнить его название в конфигураторе) и нажимаем кнопку «Очистить регистр».

Как заполняются регистры?

Из ст. 314 НК РФ следует, что регистры налогового учета (НУ) заполняются на основании первичных учетных документов непрерывно в хронологическом порядке. Это означает, что беспорядочное или безосновательное занесение данных в регистр, а также пропуски или какие-либо изъятия не допускаются. ВАЖНО!

Чем отличается регистр остатков от регистра оборотов?

Регистры остатков и регистры оборотов

Регистр накопления остатков позволяет хранить как итоговые значения ресурсов — остатки, так и изменения этих ресурсов — обороты. Регистр накопления оборотов является более «специализированным» видом регистра накопления и позволяет хранить только изменения ресурсов — обороты.

Где в 1С регистры?

В общем случае использование регистров 1С описывается схемой: «Документ — Регистр — Отчет».

Как почистить регистр сведений?

Как удалить записи регистра сведений

Удалить все записи в регистре сведений можно с помощью двух строчек кода: НаборЗаписей = РегистрыСведений[ИмяРегистра]. СоздатьНаборЗаписей(); // ИмяРегистра например «УчетнаяПолитика», «ЦеныНоменклатуры» и т. д НаборЗаписей.

Какие бывают виды регистров?

Регистры классифицируются по следующим видам:

  • накопительные (регистры памяти, хранения);
  • сдвигающие или сдвиговые.

В чем разница между регистром сведений и регистром накопления?

Чем Регистры сведений отличаются от Регистров накопления? Регистры сведений предназначены для хранения информации, развернутой по комбинации измерений, а регистры накопления предназначены для хранения информации, развернутой по комбинации измерений и поддающиеся суммированию.

Как включить ручную корректировку в 1с 8?

Как произвести редактирование вручную проводки в проведённом документе в программе 1С:Бухгалтерия 8 ред. 3.0:

  • Для ручного редактирования необходимо установить галочку в верхней части таблицы с проводками — Ручная корректировка.
  • После отражения необходимых ручных корректировок нужно сохранить изменённый документ.

Сколько есть регистров?

Виды регистров голоса — верхний, средний и нижний Регистры голоса — это звуковой ряд, пропеваемый на одной высоте, с одинаковой тембральной окраской, в рамках одного диапазона. Теория голосовых регистров принадлежит Италии — родине «красивого пения» (Bel canto).

Сколько всего регистров?

Итого, всего три регистра: низкий регистр, средний регистр, высокий регистр.

Как посмотреть регистры в 1с ERP?

1) или воспользоваться сочетанием клавиш Ctrl+Shift+A. При этом откроется одноименная форма, в ней отражаются все регистры, в которые попадает информация из выбранного документа.

Сколько регистров общего назначения?

В первую группу входят регистры общего назначения. В процессорах 386 и выше имеются восемь 32-битовых регистров общего назначения EAX, EBX, ECX, EDX, ESI, EDI, EBP, и ESP.

Сколько сегментных регистров?

В программной модели IA-32 имеется шесть сегментных регистров CS, SS, DS, ES, GS, FS, служащих для доступа к четырем типам сегментов. Сегмент кода. Содержит команды программы.

Как добавить записи в регистр сведений 1С?

Для добавления отдельной записи в регистр сведений, не подчиненный регистратору, можно использовать объект РегистрСведенийМенеджерЗаписи. <имя>. МенеджерЗаписи = РегистрыСведений. ЗначенияСвойствОбъектов.

Как в 1С сформировать регистры налогового учета?

Для формирования регистров налогового учета в программе «1С:Бухгалтерия 8» (ред. 3.0) используются специальные отчеты (раздел: «Отчеты» — «Регистры налогового учета»). Регистры формируются по данным налогового учета, отраженным на счетах бухгалтерского учета и содержат все необходимые реквизиты.

Зачем нужно измерение у регистра 1С?

Ответ тренера Регистры сведений позволяют хранить в прикладном решении произвольные данные в разрезе нескольких измерений. Например, в регистре сведений можно хранить курсы валют в разрезе валют и дат или цены предприятия в разрезе номенклатуры, типа цен и дат.

Где находится регистр?

Регистры общего назначения физически находятся в микропроцессоре внутри арифметико-логического устройства (АЛУ), поэтому их еще называют регистрами АЛУ.

Что такое регистр в 1С?

Регистры сведений — это прикладные объекты конфигурации. Они позволяют хранить в прикладном решении произвольные данные в разрезе нескольких измерений. Например, в регистре сведений можно хранить курсы валют в разрезе валют, или цены предприятия в разрезе номенклатуры и типа цен.

Для чего нужен регистр накопления?

Регистр накопления — это прикладной объект конфигурации, предназначенный для хранения информации об операциях документов-регистраторов. Он служит для оперативного получения информации по операция «Поступления», «Списание» и т. д.

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

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