Имя: Пароль:
1C
1С v8
Поиск в табличной части
0 temik_a
 
03.04.12
12:19
Граждане помогите пожалуйста,
В общем есть ТалицаЗначений и Табличная часть
В таблицу значений попадают данные (при записи) по этой таблице (по номенклатуре) формируется данные с остатком по номенклатуре в табличной части. но есть еще одна колонка КоличествоПеремещения, мне нужно чтоб выводились данные если эта колонка заполнена, и обновлялись данные при записи.
Функция  ПолучитьОстатокТовара (Номенклатура)
       // Недовложения.Очистить();
       //МВТ = Новый МенеджерВременныхТаблиц;
       
      Запрос = Новый Запрос;
   //Запрос.МенеджерВременныхТаблиц = МВТ;
   Запрос.Текст ="
        //Рабочий запроссссс
        | ВЫБРАТЬ
        |    ОстаткиТоваровКомпанииОстатки.СкладКомпании.Подразделение,
        |    ОстаткиТоваровКомпанииОстатки.СкладКомпании,
        |    ОстаткиТоваровКомпанииОстатки.Номенклатура,
        |    СУММА (ОстаткиТоваровКомпанииОстатки.КоличествоОстаток),
        |    ОстаткиТоваровКомпанииОстатки.Номенклатура.ОсновнаяЕдиницаИзмерения
   //     |    ВыпускПродукцииНедовложения.КоличествоПеремещения
        |ИЗ
        |    РегистрНакопления.ОстаткиТоваровКомпании.Остатки   КАК ОстаткиТоваровКомпанииОстатки
   //     |    Документ.ВыпускПродукции.Недовложения КАК ВыпускПродукцииНедовложения
        |ГДЕ
        |    ОстаткиТоваровКомпанииОстатки.СкладКомпании.Подразделение = &Подразделение
        |    И ОстаткиТоваровКомпанииОстатки.Номенклатура = &Номенклатура
   //     |    И ВыпускПродукцииНедовложения.КоличествоПеремещения = &КоличествоПеремещения
        |СГРУППИРОВАТЬ ПО
        |    ОстаткиТоваровКомпанииОстатки.СкладКомпании.Подразделение,
        |        ОстаткиТоваровКомпанииОстатки.СкладКомпании,
        |    ОстаткиТоваровКомпанииОстатки.Номенклатура    ";
Запрос.УстановитьПараметр("СкладКомпании", СкладКомпании);
//    Запрос.УстановитьПараметр("Подразделение", СкладКомпании.Подразделение);
//                 МассивНоменклатура = Новый Массив;
//         Для Каждого ОформленияСтроки Из Недовложения Цикл
//            текСтрока = Недовложения.Добавить();
//            
//            текСтрока.Номенклатура = ОформленияСтроки.Номенклатура;
//    //        текСтрока.КоличествоПеремещения = ОформленияСтроки.КоличествоПеремещения;
//         Если Не ОформленияСтроки.КоличествоПеремещения Тогда
//                 МассивНоменклатура.Добавить(ОформленияСтроки.КоличествоПеремещения);
//             КонецЕсли;
//             КонецЦикла;
//     Запрос.УстановитьПараметр("Номенклатура", МассивНоменклатура) ;
//        РезультатЗапроса = Запрос.Выполнить();    
//        Выборка = РезультатЗапроса.Выбрать();
//        Пока Выборка.Следующий() Цикл
//        Остаток = Недовложения.Добавить();
//        Остаток.Номенклатура = Выборка.Номенклатура;        
//        Остаток.Остаток = Выборка.КоличествоОстаток;
//        Остаток.Склад = Выборка.СкладКомпании;
////        Остаток.КоличествоПеремещения = МассивНоменклатура.КоличествоПеремещения;
//        Остаток.Подразделение = Выборка.СкладКомпанииПодразделение;
//        Остаток.ЕдиницаИзмеренияНоменклатуры = Выборка.Номенклатура.ОсновнаяЕдиницаИзмерения;
//    КонецЦикла;
КонецФункции
1 temik_a
 
03.04.12
12:20
то что после закоменчено, это извиняюсь  забыл раскоментировать
2 Kashemir
 
03.04.12
12:28
Так а чего надо то ?
3 temik_a
 
03.04.12
12:31
Чтоб выводились остатки с количествомперемещения, сейчас не выводиться ни чего, а если выводиться(без блока массива) дополняется в табличную часть, а хотелось бы чтоб заменялось
4 lxs
 
03.04.12
12:35
НайтиСтроки() не предлагать? (если я верно понял тебя, конечно)
5 Kashemir
 
03.04.12
12:37
(3) Уточняющий вопрос - понимаешь ли разницу между табличная частью и табличное полем ? Чего куда выводить остается загадкой
6 Рэйв
 
03.04.12
12:39
Ощущение что создается самолет из паравоза при помощи обработки напильником...
7 lxs
 
03.04.12
12:39
(6) +100500
8 temik_a
 
03.04.12
12:47
С блоком массива вообще ни чего не выводит
Выводит только с таком кодом
              Запрос.УстановитьПараметр("Номенклатура", Номенклатура);
   Запрос.УстановитьПараметр("СкладКомпании", СкладКомпании);
   Запрос.УстановитьПараметр("Подразделение", СкладКомпании.Подразделение);
   РезультатЗапроса = Запрос.Выполнить();    
   Выборка = РезультатЗапроса.Выбрать();

   Пока Выборка.Следующий() Цикл
       Остаток = Недовложения.Добавить();
       Остаток.Номенклатура = Выборка.Номенклатура;        
       Остаток.Остаток = Выборка.КоличествоОстаток;
       Остаток.Склад = Выборка.СкладКомпании;
//        Остаток.КоличествоПеремещения = МассивНоменклатура.КоличествоПеремещения;
       Остаток.Подразделение = Выборка.СкладКомпанииПодразделение;
       Остаток.ЕдиницаИзмеренияНоменклатуры = Выборка.Номенклатура.ОсновнаяЕдиницаИзмерения;
9 temik_a
 
03.04.12
12:48
Выводить нужно в табличную чать
10 Рэйв
 
03.04.12
12:49
(9)Если я правильно телепатирую твое косноязычие - тебе нужны остатки по номенклатуре в таб части?
11 Alex S D
 
03.04.12
12:51
ниче не понял
12 le_
 
03.04.12
12:52
(0) Четко сформулированный вопрос - это уже половина ответа (а то и весь ответ).
13 temik_a
 
03.04.12
12:53
Мне нужны остатки, но эти остатки я буду перемещать о одного склада на другой, процедуру перемещения я уже сделал в модуле проведения, осталось разобраться с количеством перемещения остатков
14 temik_a
 
03.04.12
12:55
15 Рэйв
 
03.04.12
12:56
(13)А теперь скажи зачем тебе остатки именно в табличной части? Пока ты делаешь документ, они могут семь раз измениться.Ставь перемещаемое количество и при проведении контролируй чтобы не списалось в минус.
16 temik_a
 
03.04.12
12:58
чтоб человек знал сколько ему можно переместить. Но согласен что они могут поменяться.
17 MuxauJI
 
03.04.12
12:59
а почему бы просто не вытащить остатки из регистра Хозрасчетный остатки и обороты?
18 MuxauJI
 
03.04.12
13:00
(0) Это вообще что за конфигурация у тебя?
19 Рэйв
 
03.04.12
13:01
(16)Как это не согласен? Пока ты делаешь док , кто-то продал весь остаток, а у тебя в таб части показано что он доступен. Так что вся твоя идея -кривая.
20 temik_a
 
03.04.12
13:03
Рейв я СОГЛАСЕН.
Комфигурация у меня рарус комбинат питания
21 Рэйв
 
03.04.12
13:04
(20)Ну так делай проверку при проведении и не усложняй себе жизнь.
22 Рэйв
 
03.04.12
13:05
+(21)А примерную доступность товара пусть смотрят отчетами.Для этого они и предназначены.
23 MuxauJI
 
03.04.12
13:08
+1 (22) контроль минуса должен выставлятся в НПУ разве нет?
24 Рэйв
 
03.04.12
13:11
(12)  Если ПУ= партионный учет, то да:-)
25 MuxauJI
 
03.04.12
13:15
Настройки параметров учета) там конфигурацию более подстраивают под свои нужды
26 MuxauJI
 
03.04.12
13:15
или там такого нет?(
27 Рэйв
 
03.04.12
13:33
(25)Я там глубоко не копал, так что бог его знает.