8.х Оборотный регистр накопления

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Izzi_German, 4 июн 2011.

  1. TopicStarter Overlay
    Izzi_German
    Offline

    Izzi_German

    Регистрация:
    4 июн 2011
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    1С:Предприятие 8.1 (8.1.15.14).
    при проведении документа "ОказаниеУслуги" должно создаваться движение в оборотном регистре накопления "Продажи".Но этого не происходит.Список "Продажи" остаётся пустым.Неясно почему?Где ошибка?
    Процедура проведения документа "ОказаниеУслуги" выглядит след.образом:

    Код:
    Процедура ОбработкаПроведения(Отказ,Режим)
    Для Каждого ТекСтрокаПереченьНоменклатуры Из ПереченьНоменклатуры Цикл
    Если ТекСтрокаПереченьНоменклатуры.Номенклатура.ВидНоменклатуры<>
    Перечисления.ВидыНоменклатуры.Материал Тогда Продолжить;
    КонецЕсли;
    Движение=Движения.ОстаткиМатериалов.Добавить();
    Движение.ВидДвижения=ВидДвиженияНакопления.Расход;
    Движение.Период=Дата;
    Движение.Материал=ТекСтрокаПереченьНоменклатуры.Номенклатура;
    Движение.Склад=Склад;
    Движение.Количество=ТекСтрокаПереченьНоменклатуры.Количество;
    
    Движение=Движения.СтоимостьМатериалов.Добавить();
    Движение.ВидДвижения=ВидДвиженияНакопления.Расход;
    Движение.Период=Дата;
    Движение.Материал=ТекСтрокаПереченьНоменклатуры.Номенклатура;
    Движение.Стоимость=ТекСтрокаПереченьНоменклатуры.Стоимость*
    ТекСтрокаПереченьНоменклатуры.Количество;
    КонецЦикла;
    //цикл для регистра "Продажи"
    Для Каждого ТекСтрокаПереченьНоменклатуры Из ПереченьНоменклатуры Цикл
    Движение=Движения.Продажи.Добавить();
    Движение.Период=Дата;
    Движение.Номенклатура=ТекСтрокаПереченьНоменклатуры.Номенклатура;
    Движение.Клиент=Клиент;
    Движение.Мастер=Мастер;
    Движение.Количество=ТекСтрокаПереченьНоменклатуры.Количество;
    Движение.Выручка=ТекСтрокаПереченьНоменклатуры.Сумма;
    Движение.Стоимость=ТекСтрокаПереченьНоменклатуры.Стоимость*
    ТекСтрокаПереченьНоменклатуры.Количество;
    КонецЦикла;                                     
    Движения.ОстаткиМатериалов.Записать();
    Движения.СтоимостьМатериалов.Записать();
    Движения.Продажи.Записать();
    КонецПроцедуры
    
    
  2. kavak
    Offline

    kavak Опытный в 1С

    Регистрация:
    13 май 2010
    Сообщения:
    703
    Симпатии:
    0
    Баллы:
    26
    Кхм ну по коду вроде все верно,а как дела с самим регистром?Все нужные реквизиты есть?Да и вообще не ясно как он выглядит=)
  3. TopicStarter Overlay
    Izzi_German
    Offline

    Izzi_German

    Регистрация:
    4 июн 2011
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    Оборотный регистр накопления "Продажи" содержит 3 измерения: номенклатура,клиент,мастер;3 ресурса:количество,выручка,стоимость.Не знаю,что ещё добавить...
  4. kavak
    Offline

    kavak Опытный в 1С

    Регистрация:
    13 май 2010
    Сообщения:
    703
    Симпатии:
    0
    Баллы:
    26
    Пройдитесь отладчиком посмотрите какие данные добавляются в регистр и добавляются ли вообще
  5. 1cUserAndrew
    Online

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    Да, так-то все правильно. Может, где-то в другом месте ошибка или недочет.
    По книге Радченко занимаетесь???
    Можете выложить Вашу учебную базу. Постараемся посмотреть.
  6. TopicStarter Overlay
    Izzi_German
    Offline

    Izzi_German

    Регистрация:
    4 июн 2011
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    А как узнать что записывается в регистр и записывается ли вообще? провести док-т,а потом глянуть,что в регистре?

    Да,по Радченко. Каким образом можно "выложить учебную базу"?
  7. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    1. Принудительная запись движений не нужна
    2. ВЫ же сами проверяете на вид номенлатуры - вот в цикле нечего обрабатывать.
  8. TopicStarter Overlay
    Izzi_German
    Offline

    Izzi_German

    Регистрация:
    4 июн 2011
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    1.Вы имеете в виду : "Движения.Продажи.Записать();" ?
    2. Вид номенклатуры я проверяю только для регистров ОстаткиМатериалов и СтоимостьМатериалов.
    Для регистра Продажи цикл отдельный:

    Для Каждого ТекСтрокаПереченьНоменклатуры Из ПереченьНоменклатуры Цикл
    Движение=Движения.Продажи.Добавить();
    Движение.Период=Дата;
    Движение.Номенклатура=ТекСтрокаПереченьНоменклатуры.Номенклатура;
    Движение.Клиент=Клиент;
    Движение.Мастер=Мастер;
    Движение.Количество=ТекСтрокаПереченьНоменклатуры.Количество;
    Движение.Выручка=ТекСтрокаПереченьНоменклатуры.Сумма;
    Движение.Стоимость=ТекСтрокаПереченьНоменклатуры.Стоимость*
    ТекСтрокаПереченьНоменклатуры.Количество;
    КонецЦикла;
  9. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    1. Да
    2. ПереченьНоменклатуры - это что? ТЧ? Она заполнена? Отладчик что вам говорит?
  10. TopicStarter Overlay
    Izzi_German
    Offline

    Izzi_German

    Регистрация:
    4 июн 2011
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    да,табличная часть,она заполнена.
    я уже спрашивала,но мне не ответили,что значит "пройтись отладчиком"? что-то типа компилятора?
  11. Dmitriy_76
    Offline

    Dmitriy_76 Опытный в 1С Команда форума

    Регистрация:
    26 мар 2011
    Сообщения:
    2.174
    Симпатии:
    13
    Баллы:
    29
    В конфигураторе ставь точки остановки на коде(кнопка ф9) потом по Ф5 запускаешь отладичк...проводишь док..тебя выбрасывает в конфигуратор..где ты и смотришь свои переменные/реквизиты...
  12. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    а документ "Оказание услуги" может делать движения по регистру накопления "Продажи"?
  13. TopicStarter Overlay
    Izzi_German
    Offline

    Izzi_German

    Регистрация:
    4 июн 2011
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    не выбрасывает =(
  14. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    может неправильно точка останова выбрана? прикрепи скриншот экрана с точкой


    Выгрузи информационную базу Администрирование->Выгрузить информационную базу

    Прикрепи полученный файл .dt к сообщению здесь
  15. TopicStarter Overlay
    Izzi_German
    Offline

    Izzi_German

    Регистрация:
    4 июн 2011
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    Не прикрепляется файл .dt. другие -легко,а этот не хочет :angry:
  16. 1cUserAndrew
    Online

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    Заархивируйте.
  17. TopicStarter Overlay
    Izzi_German
    Offline

    Izzi_German

    Регистрация:
    4 июн 2011
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    вот,собственно:

    Вложения:

    • 1Cv8.rar
      Размер файла:
      113,5 КБ
      Просмотров:
      34
  18. 1cUserAndrew
    Online

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    Так у Вас в обработке проведения ВООБЩЕ НЕТ никакого намека на регистр "Продажи". Того кода, который Вы привели выше (отдельный цикл для регистра Продажи), в Вашей базе нет...

    Плюс еще есть странные моменты...Например, что за процедура "ОбработкаПроведения" в модуле формы. Зачем она там???

Поделиться этой страницей