Имя: Пароль:
1C
1С v8
помогите добыть реквизит справочника из дока поступление товаров..
0 cristall78
 
24.11.14
16:17
вот какой проект  я пытался сделать......

Доброго времени суток! Условия такие – товар (для ясности – печенье) – поступает, хранится и продается в коробках.Соответственно единица хранения – коробка, а упаковкой для коробки печенья (4кг)  я задал один килограмм, равный соответственно 0,25 коробки. В документах поступления и реализации этого самого печенья, при цене коробки 1000 килограмм, рядом нужно чтобы отображалась автоматически цена за килограмм – 1000/4=250 рублей.

добавил в табличную часть документа поступление товаров новый реквизит ЦенаЗаКг   в  процедуру при изменении реквизита "упаковка" добавить надо формулу что то типа ТабличнаяЧасть.ЦенаЗаКг = табличнаяЧасть.Цена/(а вот тут проблема) справочник.номенклатура.упаковки.коэффициент.
это в справочнике номенклатура есть этот реквизит коэффииент....  его нужно вытянуть а я не знаю как...
помогите НУБУ....   конфа УТ 11.
1 GreatOne
 
24.11.14
16:24
Открыл первую попавшуюся конфу, первый документ, вижу реквизит Ед.Изм, проваливаюсь, вижу:

Процедура ТоварыЕдиницаПриИзменении(Элемент)

    СтрокаТабличнойЧасти = ЭлементыФормы.Товары.ТекущиеДанные;
    // Сохраняем текущее значение коэффициента
    СтароеЗначениеКоэффициента = ЭлементыФормы.Товары.ТекущиеДанные.Коэффициент;
    СуммаСтроки = СтрокаТабличнойЧасти.Цена*СтрокаТабличнойЧасти.Количество;

    // Выполнить общие действия для всех документов при изменении Единица.
    ОбработкаТабличныхЧастей.ПриИзмененииЕдиницыТабЧасти(ЭлементыФормы.Товары.ТекущиеДанные, ЭтотОбъект);

    // Пересчитываем плановую себестоимость.
    ОбработкаТабличныхЧастей.ПриИзмененииЕдиницыТабЧастиПлановаяСебестоимость(ЭлементыФормы.Товары.ТекущиеДанные, ЭтотОбъект, СтароеЗначениеКоэффициента);

    ОбработкаТабличныхЧастей.РассчитатьСуммуТабЧасти(СтрокаТабличнойЧасти, ЭтотОбъект);
    ОбработкаТабличныхЧастей.РассчитатьСуммуНДСТабЧасти(СтрокаТабличнойЧасти, ЭтотОбъект);

КонецПроцедуры // ТоварыЕдиницаПриИзменении()


там есть и коэффициент и типовые примеры расчета цены
2 GreatOne
 
24.11.14
16:25
да, это не УФ, но суть не меняется
3 cristall78
 
24.11.14
16:27
спасибо попробую... как получится отпишусь
4 cristall78
 
25.11.14
06:41
как у тебя  не получается... привожу ниже код проецедурки...

Процедура ТоварыУпаковкаПриИзменении(Элемент)

    ТекущаяСтрока = Элементы.Товары.ТекущиеДанные;
    // ручная правка изменение  ячейки цены за ед.
        
    ТекущаяСтрока.ЦенаЗаЕд = ТекущаяСтрока.Цена/ ТекущаяСтрока.ПолучитьРодителя(упаковкаНоменклатуры);
    
    
    //конец ручным изменениям

    СтруктураПересчетаСуммы = ПолучитьСтруктуруПересчетаСуммыНДСВСтрокеТЧ(ЭтаФорма);
    
    СтруктураДействий = Новый Структура;
    СтруктураДействий.Вставить("ЗаполнитьНоменклатуруПоставщикаПоНоменклатуре", Объект.Партнер);
    СтруктураДействий.Вставить("ПроверитьСопоставленнуюНоменклатуруПоставщика",
        ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруПроверкиСопоставленнойНоменклатурыПоставщикаВСтрокеТЧ(Объект, НеВыполнятьПроверкуСопоставленнойНоменклатурыПоставщика));
    СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц");
    
    Если ТекущаяСтрока.Количество > 0 Тогда
        СтруктураДействий.Вставить("ПересчитатьЦенуЗаУпаковку", ТекущаяСтрока.Количество);
        Если Объект.ПоступлениеПоЗаказам И ТекущаяСтрока.КодСтроки > 0 Тогда
            СтруктураДействий.Вставить("ПересчитатьЦенуЗаказаЗаУпаковку", ТекущаяСтрока.Количество);
        КонецЕсли;
    Иначе
        СтруктураДействий.Вставить("ЗаполнитьЦенуЗакупки", ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруЗаполненияЦеныЗакупкиВСтрокеТЧ(Объект));
    КонецЕсли;
    
    СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы);
    СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы);
    СтруктураДействий.Вставить("ПересчитатьСумму");
    СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
    СтруктураДействий.Вставить("ОчиститьСуммуВзаиморасчетов");
    СтруктураДействий.Вставить("ЗаполнитьДубликатыЗависимыхРеквизитов", ЗависимыеРеквизиты());
    СтруктураДействий.Вставить("ПересчитатьСуммуСверхЗаказа", Новый Структура("РеализацияПоступлениеПоЗаказу, ТребуетсяЗалогЗаТару",
        Объект.ПоступлениеПоЗаказам, Объект.ТребуетсяЗалогЗаТару));
    ОбработкаТабличнойЧастиКлиент.ОбработатьСтрокуТЧ(ТекущаяСтрока, СтруктураДействий, КэшированныеЗначения);
    
    РассчитатьИтоговыеПоказателиПоступления(ЭтаФорма);
    
КонецПроцедуры
5 cristall78
 
25.11.14
06:43
вот там где ручная правка мне нужно получить коэффициент но этого коэффициента в текущий момент нет в коллекции ткущая строка
в этой коллекции есть только упаковка которая равна "ящик"...
я могу  написать ена разделить на текущая строка.упаковка.
но тогда я получаю что цену делю на слово ящик....
6 cristall78
 
25.11.14
06:46
этот коэффициент  он спрятан выше вот если бы я смог взять родителя от слова ящик а у этого родителя взять уже коэффииент.. так как коэффииент это реквизит справочника номенклатуры. упаковка привязанный к ящику и только для моего товара .... выбранного в этот самый момент в этой самой строке..
7 cristall78
 
25.11.14
06:48
а еще не понятно что делает строка
СтруктураДействий.Вставить("ПересчитатьСумму")

я не обнаружил такой процедуры  ПересчитатьСумму может она в главном модуле всей УТ11 ?
8 Рэйв
 
25.11.14
06:51
>>справочник.номенклатура.упаковки.коэффициент.
противоречит

>>это в справочнике номенклатура есть этот реквизит коэффииент....
9 Рэйв
 
25.11.14
06:52
и что такое .упаковки?
10 Wobland
 
25.11.14
07:02
>добавил в табличную часть документа поступление товаров новый реквизит
а вот это зря. ты хочешь на форме что-то рисовать информативно, а не изменять сущность
11 cristall78
 
25.11.14
07:06
в УТ 11  в справочнике номенклатура есть подчиненный справочник для каждого товара это его название "упаковки".. и уже там коэффициент....  

тут дело об том что при создании например  упаковки с названием ящик  мы присваиваем ему коэффииент 4  
тоесть 4 кг в чщике содержится моих печенек.....


в итоге мне нужно получить  в табличной части документа поступление товара цену за 1 кг товара

товар приходуется ящиками...:):)  и цена за ящик...  а в табличной части нужно разделить цену ящика на этот дурацуий коэффициент....

если есть скайп и немного времени я тебе покажу....

мой скайп tel726738
12 Wobland
 
25.11.14
07:07
в регистр уже сходил посмотреть?
13 cristall78
 
25.11.14
07:07
неа:):)
14 cristall78
 
25.11.14
07:09
не знаю как.... то  что я нуб я уже говорил  но как  учиться по другому... не знаю.... преподаватель всегда нужен.... а я только начальный курс прошел в 1с.... да в vba могу программировать
15 cristall78
 
25.11.14
07:09
вот то что в миф могу мменя  и направляет не туда... млин я это чувствую.. но как собака сказать не могу:
16 cristall78
 
25.11.14
07:09
блин не миф а vba
17 Wobland
 
25.11.14
07:10
(13) ну и правильно. нечего там делать
18 cristall78
 
25.11.14
07:12
я тоже думаю что коэффииент... не содержится в регистре.. так как это не расчетная величина..
19 cristall78
 
25.11.14
07:13
wobland  может ты по скайпу со мной свяжешься? я покажу что мне надо а то так нормально не могу вам объяснить млин  свой экран те продемонстрирую... и покажу... куда и чего.. пытаюсь запихать
20 Wobland
 
25.11.14
07:14
(19) стучись
21 cristall78
 
25.11.14
07:16
куда? у тя в профиле только аська есть а скайпа нет
22 Wobland
 
25.11.14
07:17
(21) а он включен. имя сказать или угадаешь? ;)
23 cristall78
 
25.11.14
07:18
попробую угадать...:)
24 Wobland
 
25.11.14
07:49
моя телепатия была права - надо показать то, что тупо хранится в регистре ;)
25 cristall78
 
25.11.14
18:27
все тема закрыта.. вопрос не решен но потерял актуальность:)
26 cristall78
 
25.11.14
18:28
решил ему задачку:):)