Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
11 Дек 2017, 07:15
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Добавить новую запись в регистр сведений  (Прочитано 17102 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Tanya_Lo

  • *
  • Сообщений: 37
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-07-19
  • Сайт: 
  • Профессия: Ученик 1С
Есть Регистр Сведений Цены (сделала его независимым).
измерение - товар
ресурс - цена.

Задача такая :
   В расходной накладной при выборе товара в графу "цена” должно заноситься значение из реквизита "ЦенаПродажи” справочника на дату документа. (это сделала, заполняю автоматически при выборе товара)
   Если в накладной значение цены продажи изменяется, то новое значение должно быть записано в периодический реквизит "ЦенаПродажи”. - как это реализовать?
 Подскажите код ...
Я так понимаю при записи - надо проверить изменил ли пользователь Цену продажи по сравнению с актуальной ценой в регистре сведений по товару и если да - по добавить новую строку в регистр??

Вот функция которой получаю цену

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

Процедура ПередЗаписью(Отказ, РежимПроведения)
  Для Каждого ТекСтрокаТовары Из Товары Цикл
      ценаПоРегистру= ПолучитьЦену(Дата,ТекСтрока.Товар);
               Если Цена<>ЦенаПоРегистру Тогда
                   ???? как дописать новое значение в регистр??
                КонецЕсли;
КонецЦикла;
 
конецпроцедуры


Оффлайн Tanya_Lo

  • *
  • Сообщений: 37
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-07-19
  • Сайт: 
  • Профессия: Ученик 1С
Кто-нибудь!! Ау .. подскажите ....

Оффлайн mixqn

  • Администратор
  • *****
  • Сообщений: 1346
  • РЕПУТАЦИЯ: 166
  • КПД: 12%
  • Who is John Galt?
  • Регистрация: 2012-08-15
  • Сайт: 3gmaster.net
  • Профессия: Программист 1С
буквально недавно делал подобное - в договорах контрагентов историю изменения кредитного лимита надо хранить было.
завтра могу куски кода скинуть. сейчас времени нет.

вообще записи в регистр добавляются менеджером записи:
МенеджерЗаписи = РегистрыСведений.<ИмяРегистраСведений>.СоздатьМенеджерЗаписи();

Оффлайн Tanya_Lo

  • *
  • Сообщений: 37
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-07-19
  • Сайт: 
  • Профессия: Ученик 1С
буквально недавно делал подобное - в договорах контрагентов историю изменения кредитного лимита надо хранить было.
завтра могу куски кода скинуть. сейчас времени нет.

вообще записи в регистр добавляются менеджером записи:
МенеджерЗаписи = РегистрыСведений.<ИмяРегистраСведений>.СоздатьМенеджерЗаписи();
Буду ждать "куски кода" )

Оффлайн GRADUS

  • *****
  • Сообщений: 699
  • РЕПУТАЦИЯ: 51
  • КПД: 7%
  • Регистрация: 2013-06-08
  • Сайт: 
  • Профессия: Программист 1С
Регистры надо самому уметь писать. Как бы. Это не сложные переодические расчеты же.

Оффлайн mixqn

  • Администратор
  • *****
  • Сообщений: 1346
  • РЕПУТАЦИЯ: 166
  • КПД: 12%
  • Who is John Galt?
  • Регистрация: 2012-08-15
  • Сайт: 3gmaster.net
  • Профессия: Программист 1С
обещанный код:
Процедура ЗаписатьИсториюЛимитовДебиторки(Период, ЛимитДебиторки)

МенеджерЗаписи = РегистрыСведений.ИсторияИзмененийДопустимойСуммыЗадолженности.СоздатьМенеджерЗаписи();
МенеджерЗаписи.ДоговорКонтрагента = Ссылка;
МенеджерЗаписи.Пользователь = ПараметрыСеанса.ТекущийПользователь;
МенеджерЗаписи.ДопустимаяСуммаЗадолженности = ЛимитДебиторки;
МенеджерЗаписи.Период = Период;

МенеджерЗаписи.Записать();

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

Процедура ПриЗаписи(Отказ)

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

Запрос.УстановитьПараметр("ДоговорКонтрагента", Ссылка);

ЕстьОшибки = Ложь;

Попытка
// выполнение запроса в попытке для исключения ошибки прав доступа
Результат = Запрос.Выполнить();
Исключение
ЕстьОшибки = Истина;
КонецПопытки;

Если НЕ ЕстьОшибки Тогда
ТекДата = ТекущаяДата();

Выборка = Результат.Выбрать();
Если Выборка.Следующий() Тогда
// есть данные в истории
Если Выборка.ДопустимаяСуммаЗадолженности <> ДопустимаяСуммаЗадолженности Тогда
// значение изменилось, пишем в регистр
ЗаписатьИсториюЛимитовДебиторки(ТекДата, ДопустимаяСуммаЗадолженности);
КонецЕсли;
Иначе
// данных в истории еще нет - нужно создать первую запись в регистре, если значение ДопустимаяСуммаЗадолженности заполнено
Если ЗначениеЗаполнено(ДопустимаяСуммаЗадолженности) Тогда
ЗаписатьИсториюЛимитовДебиторки(ТекДата, ДопустимаяСуммаЗадолженности);
КонецЕсли;
КонецЕсли;

КонецЕсли;
КонецЕсли;

КонецПроцедуры
Добавлено: 20 Авг 2013, 08:15

у вас будет все 1 в 1, только подставьте свои объекты, регистры, реквизиты и т.п. (т.е. код будет в модуле справочника Номенклатура, регистр будет Цены и т.д.)

Оффлайн Tanya_Lo

  • *
  • Сообщений: 37
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-07-19
  • Сайт: 
  • Профессия: Ученик 1С
Все, разобралась.


Теги:
 

Отличие проводки по регистру сведений от проводки по регистру накопления?

Автор DirecTwiXРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 4837
Последний ответ 18 Апр 2012, 02:19
от Dethmontt
Как добавить столбец "Номенклатура" в таблицу "Реализация товаров и услуг"

Автор ZanderBlackРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 9
Просмотров: 9832
Последний ответ 19 Ноя 2012, 11:12
от Gunner
Документ "Поступление товаров и услуг" - как добавить графу "единица измерения"

Автор asolРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 6003
Последний ответ 29 Мар 2012, 14:40
от Essential
Добавление сведений в графу "основание" документа "ТОРГ-12"

Автор Ярослав1984Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 7730
Последний ответ 20 Авг 2013, 18:45
от Ярослав1984
Как можно подставлять цену из регистра сведений "Цены поставщиков" в документ"ПоступлениеТоваров" на актуальную дату? Необходимо использовать запрос в решении.

Автор Елена6666666666Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 14
Просмотров: 9323
Последний ответ 24 Окт 2014, 13:30
от cska-fanat-kz

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
160 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
55 Сообщений
alex0402
46 Сообщений
andron81_81
44 Сообщений
AIFrame
35 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
BuhRust
27 Сообщений
Golickoff Golickoff
27 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 297
  • Точка Скрытых: 0
  • Точка Пользователей: 6
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal