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

Автор Тема: Движение в регистре накопления (приход/расход) по нажатию кнопки  (Прочитано 170 раз)

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

Оффлайн Funt432286

  • *
  • Сообщений: 22
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2017-10-26
  • Сайт: 
Доброго времени суток!

Есть регистр накопления БумагаЦифра, приход осуществляется с помощью ДОКУМЕНТА, а вот расход необходимо осуществлять с разных форм документа по нажатию КОПКИ или при изменении ПолеФлажка.
Данный код Движения создал с помощью конструктора движения, скопировал код и поставил его в процедуру кнопки.

&НаКлиенте
Процедура СписаниеБумаги(Команда)
   
   // регистр БумагаЦифра Расход
   
   Движения.БумагаЦифра.Записывать = Истина;
   Движение = Движения.БумагаЦифра.Добавить();
   Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
   Движение.Период = ТекущаяДата;
   Движение.МатериалЦифра = Объект.Бумага;
   Движение.Масса = Объект.Масса;
   Движение.ОстатокРезерв = Объект.КолвоПечатныхЛистов + Объект.ПриладкаЛистов;
   Движение.Основание = Объект.Номер;
   
   //}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
   
        Сообщить("Списание бумаги прошло успешно!");
КонецПроцедуры

Выдается ряд ошибок, пытался данное движение перенести НаСервере. Тоже ничего выдает ошибки. Если же программа запускается то при нажатии на кнопку в Регистре Накопления запись данных не производится!

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


Оффлайн alexandr_ll

  • *****
  • Сообщений: 608
  • РЕПУТАЦИЯ: 101
  • КПД: 17%
  • Регистрация: 2016-08-23
  • Сайт: 
  • Профессия: Программист 1С
Доброго времени суток!

Есть регистр накопления БумагаЦифра, приход осуществляется с помощью ДОКУМЕНТА, а вот расход необходимо осуществлять с разных форм документа по нажатию КОПКИ или при изменении ПолеФлажка.
Данный код Движения создал с помощью конструктора движения, скопировал код и поставил его в процедуру кнопки.

&НаКлиенте
Процедура СписаниеБумаги(Команда)
   
   // регистр БумагаЦифра Расход
   
   Движения.БумагаЦифра.Записывать = Истина;
   Движение = Движения.БумагаЦифра.Добавить();
   Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
   Движение.Период = ТекущаяДата;
   Движение.МатериалЦифра = Объект.Бумага;
   Движение.Масса = Объект.Масса;
   Движение.ОстатокРезерв = Объект.КолвоПечатныхЛистов + Объект.ПриладкаЛистов;
   Движение.Основание = Объект.Номер;
   
   //}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
   
        Сообщить("Списание бумаги прошло успешно!");
КонецПроцедуры

Выдается ряд ошибок, пытался данное движение перенести НаСервере. Тоже ничего выдает ошибки. Если же программа запускается то при нажатии на кнопку в Регистре Накопления запись данных не производится!

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

Оффлайн Funt432286

  • *
  • Сообщений: 22
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2017-10-26
  • Сайт: 
Если писать НаКлиенте, то ошибки такие:

{Документ.ТЗ_ВизиткиБейджи.Форма.ФормаДокумента.Форма(187,4)}: Переменная не определена (Движения)
   <<?>>Движения.БумагаЦифра.Записывать = Истина; (Проверка: Тонкий клиент)
{Документ.ТЗ_ВизиткиБейджи.Форма.ФормаДокумента.Форма(188,15)}: Переменная не определена (Движения)
   Движение = <<?>>Движения.БумагаЦифра.Добавить(); (Проверка: Тонкий клиент)
{Документ.ТЗ_ВизиткиБейджи.Форма.ФормаДокумента.Форма(190,22)}: Переменная не определена (ТекущаяДата)
   Движение.Период = <<?>>ТекущаяДата; (Проверка: Тонкий клиент)

Оффлайн bsn-chita

  • *
  • Сообщений: 39
  • РЕПУТАЦИЯ: 7
  • КПД: 18%
  • Регистрация: 2017-03-06
  • Сайт: 
  • Профессия: Ученик 1С

Оффлайн Funt432286

  • *
  • Сообщений: 22
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2017-10-26
  • Сайт: 
Хотелось бы чтобы сам документ был запрещен на Проведение стандартной функцией документа, так как запись будет проводится в разные регистры накопления, с разных кнопок но на одной форме документа.

Оффлайн bsn-chita

  • *
  • Сообщений: 39
  • РЕПУТАЦИЯ: 7
  • КПД: 18%
  • Регистрация: 2017-03-06
  • Сайт: 
  • Профессия: Ученик 1С
Как вариант.
Откройте форму документа, в элементах формы на самой форме правой кнопкой и выберите свойства, нажмите Состав команд "Открыть", уберите галочки с того что вам не надо("Провести и закрыть" и "провести" наверное).

Оффлайн Funt432286

  • *
  • Сообщений: 22
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2017-10-26
  • Сайт: 
Это хорошо, но как быть с кодом на движение расхода в регистре накоплений? Ссылку которую скинули, там записывается несколько записей в ресгистр, а у меня получается в конкретный регистр необходимо записать конкретные данные на расход товара (списание)

Оффлайн bsn-chita

  • *
  • Сообщений: 39
  • РЕПУТАЦИЯ: 7
  • КПД: 18%
  • Регистрация: 2017-03-06
  • Сайт: 
  • Профессия: Ученик 1С
Как то так.
	НаборЗаписей = РегистрыНакопления.ОстаткиНоменклатуры.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Значение = Объект.Ссылка;

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

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

Оффлайн Funt432286

  • *
  • Сообщений: 22
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2017-10-26
  • Сайт: 
&НаСервере
Процедура СписаниеБумагиНаСервере();
   
   // списание бумаги
    НаборЗаписей = РегистрыНакопления.БумагаЦифра.Остатки();
    НаборЗаписей.Отбор.Регистратор.Значение = Объект.Ссылка;
   
    Для Каждого Элемент Из Объект.СписокНоменклатуры Цикл
        НоваяЗапись = НаборЗаписей.Добавить();
        НоваяЗапись.ВидДвижения = ВидДвиженияНакопления.Приход;
        НоваяЗапись.Период = Объект.Дата;
        НоваяЗапись.МатериалЦифра = Объект.Бумага;
        НоваяЗапись.Масса = Объект.Масса;
      НоваяЗапись.ОстатокРезерв = Объект.КолвоПечатныхЛистов + Объект.ПриладкаЛистов;
      НоваяЗапись.Основание = "Заказ №" + Объект.Номер;
    КонецЦикла;
   
    НаборЗаписей.Записать();

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

Спасибо большое за помощь!
При отладки программы, была ошибка на РегистрНакопления, поставил БумагаЦифра.
Стал ругаться по другому:

{Документ.ТЗ_ВизиткиБейджи.Форма.ФормаДокумента.Форма(210)}: Поле объекта не обнаружено (Отбор)
    НаборЗаписей.Отбор.Регистратор.Значение = Объект.Ссылка;
Добавлено: 13 Авг 2018, 10:40

&НаСервере
Процедура СписаниеБумагиНаСервере();
   
   // списание бумаги
    НаборЗаписей = РегистрыНакопления.БумагаЦифра.Остатки();
    НаборЗаписей.Отбор.Регистратор.Значение = Объект.Ссылка;
   
    Для Каждого Элемент Из Объект.СписокНоменклатуры Цикл
        НоваяЗапись = НаборЗаписей.Добавить();
        НоваяЗапись.ВидДвижения = ВидДвиженияНакопления.Приход;
        НоваяЗапись.Период = Объект.Дата;
        НоваяЗапись.МатериалЦифра = Объект.Бумага;
        НоваяЗапись.Масса = Объект.Масса;
      НоваяЗапись.ОстатокРезерв = Объект.КолвоПечатныхЛистов + Объект.ПриладкаЛистов;
      НоваяЗапись.Основание = "Заказ №" + Объект.Номер;
    КонецЦикла;
   
    НаборЗаписей.Записать();

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

Спасибо большое за помощь!
При отладки программы, была ошибка на РегистрНакопления, поставил БумагаЦифра.
Стал ругаться по другому:

{Документ.ТЗ_ВизиткиБейджи.Форма.ФормаДокумента.Форма(210)}: Поле объекта не обнаружено (Отбор)
    НаборЗаписей.Отбор.Регистратор.Значение = Объект.Ссылка;

Последний раз редактировалось: Funt432286; 13 Авг 2018, 10:40. Причина: Объединение сообщений

Оффлайн alex0402

  • *****
  • Сообщений: 1582
  • РЕПУТАЦИЯ: 270
  • КПД: 17%
  • Регистрация: 2010-09-10
  • Сайт: 
  • Профессия: Программист 1С
НаборЗаписей = РегистрыНакопления.БумагаЦифра.Остатки();

возвращает структуру.
нужно:

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


Теги:
 

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

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

Ответов: 2
Просмотров: 5321
Последний ответ 18 Апр 2012, 02:19
от Dethmontt
В чем отличие регистра сведений от регистра накопления?

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

Ответов: 3
Просмотров: 2514
Последний ответ 19 Апр 2018, 13:43
от Ромашев Алексей
Регистры накопления, Регистры сведений, Документы, Проведение

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

Ответов: 12
Просмотров: 9183
Последний ответ 17 Янв 2014, 21:52
от kot_oo
Запрос к виртуальной таблице регистра накопления: что писать в "Произвольном Выражении"?

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

Ответов: 1
Просмотров: 372
Последний ответ 27 Окт 2017, 21:02
от MuI_I_Ika
Регистр накопления "Занятые штатные единицы организации"

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

Ответов: 4
Просмотров: 4542
Последний ответ 10 Дек 2014, 14:08
от Firuze

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

AIFrame AIFrame
98 Сообщений
LexaK
72 Сообщений
alex0402
72 Сообщений
alexandr_ll
51 Сообщений
byte777
29 Сообщений
Alex26
28 Сообщений
DialogVM
25 Сообщений
ilyay ilyay
25 Сообщений
Sy4a
24 Сообщений
Вадим Ф Вадим Ф
23 Сообщений

* Кто онлайн

  • Точка Гостей: 165
  • Точка Скрытых: 0
  • Точка Пользователей: 0

Нет пользователей онлайн.

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal