Имя: Пароль:
1C
1С v8
Как в форме списка журнала выгрузить таб часть документа в регистр накопления?
, ,
0 Медвепут
 
16.06.14
17:10
РесурсыР = РегистрыНакопления.СтатусыР;
            
             ТекущиеДанные = ЭлементыФормы.ЖурналДокументовСписок.ТекущиеДанные;
    Если ТипЗнч(ТекущиеДанные.Ссылка) = Тип("ДокументСсылка.ТОРГ_РасходнаяНакладная") Тогда
         Если  Статус = Перечисления.СтатусыСкладскойОбработки.НеОбработано Тогда
            ДокументОбъект = ТекущиеДанные.Ссылка.ПолучитьОбъект();
            
             СтрокаТабЧасти  = ДокументОбъект.Товары.Получить(ЭлементыФормы.Товары.ТекущиеДанные.НомерСтроки-1);
    Для Каждого СтрокаТабЧасти      Из Товары Цикл       
    Сообщить(СтрокаТабЧасти.Номенклатура+ ""+СтрокаТабЧасти.Количество );    
    
         РесурсыР.Номенклатура = СтрокаТабЧасти.Номенклатура;
          РесурсыР.Количество = СтрокаТабЧасти.Количество;

             
    КонецЦикла;
        КонецЕсли;             
      КонецЕсли;
1 Wobland
 
16.06.14
17:13
а можно повторить вопрос? желательно другими словами
2 Бешеная Нога
 
16.06.14
17:15
(1)+1

З.Ы. ник не политкорректный...
3 МихаилМ
 
16.06.14
17:15
+(1)
какой-то бред в заголовке темы
4 DS
 
16.06.14
17:15
Интересно...
5 Медвепут
 
16.06.14
17:17
Wobland можно Машку за ляшку) пишу код в форме списка журнала , получаю ссылку на документ к его табличной части  . вот ее мне нужно выгрузить в регистр накопления   че непонятно?
6 Медвепут
 
16.06.14
17:17
Бешеная Нога а мне по..
7 Бешеная Нога
 
16.06.14
17:18
(6) мужик!
8 DS
 
16.06.14
17:18
А РН, стесняюсь спросить, остатков или оборотов?
9 Медвепут
 
16.06.14
17:19
остатков
10 Медвепут
 
16.06.14
17:19
Бешеная Нога не будем хамить друг другу
11 ЧеловекДуши
 
16.06.14
17:21
Предлагаю позвать специалиста :)
12 Segate
 
16.06.14
17:22
(6)за вами уже выехали.
13 Медвепут
 
16.06.14
17:23
Segate вы о чем ?
14 Wobland
 
16.06.14
17:35
(5) всё. главный вопрос: на зачем все эти конвульсии?
15 DS
 
16.06.14
17:37
(9) А что надо записать в РН: приход или расход?
16 Медвепут
 
16.06.14
17:40
DS проход
17 Крошка Ру
 
16.06.14
17:43
(16) проход?   О_о

Новое слово в 1С?
18 Wobland
 
16.06.14
17:44
(16) может, провод? или выход?
19 YF
 
16.06.14
17:44
(17) +1 задний
20 Крошка Ру
 
16.06.14
17:44
А в целом...
Тему следует читать "Покажите мне, как делать запись в регистр накопления" ??
21 Медвепут
 
16.06.14
17:46
Крошка Ру еще раз вопрос прочитай мой
22 Wobland
 
16.06.14
17:47
Процедура ОбработкаПроведения(Отказ, Режим)
    //{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
    // Данный фрагмент построен конструктором.
    // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

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

    //}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
КонецПроцедуры

это конструктор из каркасной конфигурации для экзамена по специалисту
23 Медвепут
 
16.06.14
17:47
пишу код в форме списка журнала , получаю ссылку на документ к его табличной части  . вот ее мне нужно выгрузить в регистр накопления   че непонятно?
24 Медвепут
 
16.06.14
17:47
Wobland ни чего общего
25 Крошка Ру
 
16.06.14
17:47
(21) Прочитал. В чем проблема-то?
Ещё, конечно - Зачем? Но это уже другой вопрос
26 Wobland
 
16.06.14
17:48
(23) не нужно тебе этого. просто поверь старшему товарищу
27 Медвепут
 
16.06.14
17:48
я говорю как мне это сделать в форме списка журнала ?
28 Медвепут
 
16.06.14
17:48
Wobland мне нет . начу моему нужно
29 Wobland
 
16.06.14
17:49
(28) так и сказал? хочу, грит, выгружать в РН?
30 Крошка Ру
 
16.06.14
17:50
(26) "There aren't the droids you're looking for" )))
31 Фокусник
 
16.06.14
17:50
(27) общепринято движения/проводки делать в обработке проведения.
32 Медвепут
 
16.06.14
17:51
суть вопроса , есть ряд документов , есть форма списка журнала   в которой юзер может интерактивно менять статус документов . обработан не обработан , вот когда не обработан нужно конкретный докум брать и выгружать его таб часть (номенклатура ,количество) в регистр накопления , при повторном изменении статуса на обработан .сверять количество в документе с регистром накопления . как то так
33 Крошка Ру
 
16.06.14
17:52
(27) Ещё раз и медленно: в чем проблема-то? Ты не знаешь как работать с регистром?
34 Медвепут
 
16.06.14
17:52
зачем ему оно нужно .ну видимо для контроля списания количества , чтобы надежно было )
35 Крошка Ру
 
16.06.14
17:52
(27) - можно и к (32)
36 Крошка Ру
 
16.06.14
17:53
*(33) можно и к (32)
37 Медвепут
 
16.06.14
17:53
Крошка Ру читай еще раз медленно с чувством и расстановкой

я не знаю как это сделать в форме списка журнала
38 Крошка Ру
 
16.06.14
17:54
А в ФОРМЕ СПИСКА у тебя сделать это и не получится.
Можно сделать в модуле формы
39 rendez-vous
 
16.06.14
17:55
(37) А в форме документа знаешь как это сделать?
40 DS
 
16.06.14
17:56
(32) Есть такие события у документов: "ПриЗаписи", "ОбработкаПроведения". Эти такие методы у объектов документа, как "Записать()", которые вызывают данные события...
41 Медвепут
 
16.06.14
17:56
rendez-vous канешно
42 DS
 
16.06.14
17:56
(40)+ "Эти" = "Есть".
43 rendez-vous
 
16.06.14
17:56
(38) У него конечно. А у тебя получится?
44 Медвепут
 
16.06.14
17:57
Крошка Ру а мне нужно в форме списка журнала  в том то и соль
45 rendez-vous
 
16.06.14
17:57
(41) Откуда?
46 Медвепут
 
16.06.14
17:57
DS и че ,знаю про них пользуюсь . не к теме
47 DS
 
16.06.14
17:58
(46) Не к теме? Тады "ой"...
48 Фокусник
 
16.06.14
17:58
(32) докОбъект = ссылка.ПолучитьОбъект();
ДокОбъект.Записать(РежимЗаписиДокумента.Проведение);

А в обработке проведения как в (22)
49 Крошка Ру
 
16.06.14
17:59
ААааааааа.... Пристрелите меня кто-нибудь!!!!
50 Медвепут
 
16.06.14
17:59
миня убейте  нимогу я большааааа
51 DS
 
16.06.14
18:00
(48) см. (46)
52 Крошка Ру
 
16.06.14
18:00
(46) Ты не знаешь как обработать событие на форме списка? Ты не знаешь какой код нужно написать, чтобы занести запись в регистр? Какой информации тебе не хватает?
53 rendez-vous
 
16.06.14
18:04
(50) Ладно уж. Живи.

    нз=регистрынакопления.СтатусыР.СоздатьНаборЗаписей();
    нз.Отбор.Регистратор.Установить(ТекущиеДанные.Ссылка);
    
Для Каждого СтрокаТабЧасти      Из Товары Цикл           Движение = нз.Добавить();
    конеццикла;
    нз.Записать();
54 Медвепут
 
17.06.14
09:24
не знаешь какой код нужно написать, чтобы занести запись в регистр? К
55 Медвепут
 
17.06.14
16:25
От такой

ТекущиеДанные = ЭлементыФормы.ЖурналДокументовСписок.ТекущиеДанные;
    Если ТипЗнч(ТекущиеДанные.Ссылка) = Тип("ДокументСсылка.ТОРГ_РасходнаяНакладная") Тогда
        Если  Статус = Перечисления.СтатусыСкладскойОбработки.НеОбработано Тогда
            
                 
            ДокументОбъект = ТекущиеДанные.Ссылка.ПолучитьОбъект();
            
         
      нз=регистрыСведений.СтатусыР.СоздатьНаборЗаписей();
    
    Для Каждого СтрокаТабЧасти   Из Товары Цикл      
        Движение = нз.Добавить();
      
    Движение.Период =  ТекущаяДата();
    Движение.Количество=     СтрокаТабЧасти.Количество;
    Движение.Номенклатура = СтрокаТабЧасти.Номенклатура;    
    конеццикла;
    нз.Записать(Ложь);
    
ИначеЕсли      Статус = Перечисления.СтатусыСкладскойОбработки.Обработано Тогда
    
    
     Запрос = Новый Запрос;
    
     Запрос.Текст =
    
     "ВЫБРАТЬ
     |    ТОРГ_РасходнаяНакладнаяТовары.Номенклатура,
     |    ТОРГ_РасходнаяНакладнаяТовары.Количество КАК КолДок,
     |    ЕСТЬNULL(СтатусыРСрезПоследних.Количество, 0) КАК КолОст,
     |    ТОРГ_РасходнаяНакладнаяТовары.Ссылка КАК Ссылка
     |ИЗ
     |    Документ.ТОРГ_РасходнаяНакладная.Товары КАК ТОРГ_РасходнаяНакладнаяТовары
     |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтатусыР.СрезПоследних КАК СтатусыРСрезПоследних
     |        ПО ТОРГ_РасходнаяНакладнаяТовары.Номенклатура = СтатусыРСрезПоследних.Номенклатура
     |ГДЕ
     |    ТОРГ_РасходнаяНакладнаяТовары.Ссылка = &Ссылка";
    
      Запрос.УстановитьПараметр("Ссылка",ТекущиеДанные.Ссылка);
      
      
     РезультатЗапроса = Запрос.Выполнить();
     Выборка = РезультатЗапроса.Выбрать();
    
     Пока Выборка.Следующий() Цикл
        
         Если Выборка.КолДок<>Выборка.КолОст   Тогда
            
             Сообщить( "неравное количество в докум и регистре "+ " "+Выборка.Ссылка+" кол в док   "+Выборка.КолДок +"   "+"кол в ост    "+ Выборка.КолОст+"   "+Выборка.Номенклатура );
            
            
             КонецЕсли;
          КонецЦикла;
                   КонецЕсли;             
            КонецЕсли;
56 Медвепут
 
17.06.14
16:27
только теперь  статус не меняет на НеОбработано

ищу в чем косяк
57 РенеДекарт
 
17.06.14
17:30
(53)и что это записываетсмя в РН? Выделил строку - получи запись в регистр?
(44)зачем? Операции опиши, ЧТО и КАК ты видишь при совместной работе Списка и РН.
58 РенеДекарт
 
17.06.14
17:31
(55)>>ДокументОбъект = ТекущиеДанные.Ссылка.ПолучитьОбъект();
далеко пойдешь....
Список предполагается не более 10 пунктов?
59 Медвепут
 
18.06.14
13:18
РенеДекарт далеко ты пошел ,я уже все сделал что мне нужно было
60 РенеДекарт
 
19.06.14
11:56
(59) ну-ну, дерзай.
Ты даже не понял, о чем речь.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс