Имя: Пароль:
1C
1С v8
Проблема с записью документа
0 Triton_11
 
03.04.14
13:40
У меня есть данные на текстовом документе
Конфеты;Черный;16;5
Булочки;Сладкий;900;25
Печенье;Соленый;958;12
Шоколад;Горький;6;14
Куртка;Синтипон;3;30
Брюки;Коричневый;24;20
лопата;совковая;2;2000
все данные кроме лопаты совковой есть в справочнике Номенклатура
мне при нажатий кнопки выполнить необходимо создать в справочнике Номенклатура
данные Номенклатура:лопата Характеристики:совковая
я это сделал и необходимо при нажатий еще одной кнопки сформировать документ ОтчетОРозничныхПродажах
проблема вот в чем при записи справочника Номенклатура с данными лопата совковая документ не проводится выдает ошибку
потому что нет ЕдиницыХраненияОстатков
и Единицы хранения отчетов
При интерактивном когда нажимаю кнопку записать они програмно автоматически заполняются
а при программном записи они не заполняются теперь вопрос
как при программном записи автоматически заполнять
эти реквизиты т.е Единицы хранения остатков и единицы хранения отчетов
должно стоять значение шт
1 Ненавижу 1С
 
гуру
03.04.14
13:41
(0) надо заставить себя запрограммировать этот момент
2 Avganec
 
03.04.14
13:42
(0) наверно надо это написать...
3 Triton_11
 
03.04.14
13:42
надо автоматически записывать справочник чтобы заполнялись эти реквизиты
4 Wobland
 
03.04.14
13:43
"=" - это оператор присвоения. оператор присвоения, это Triton_11. Triton_11, это - оператор присвоения
5 Ненавижу 1С
 
гуру
03.04.14
13:44
(4) = это оператор присваивания, неуч
а еще это операция сравнения значений на равенство
6 Wobland
 
03.04.14
13:44
(3) вот теперь точно программировать придётся
7 Wobland
 
03.04.14
13:44
(5) пардоньте наши колхозы ;)
8 Triton_11
 
03.04.14
13:45
(4) если ты программно записал этот справочник
то это реквизиты не видны и оператор присваивания не действует = это не работает я уже пытался
9 Рэйв
 
03.04.14
13:45
(0)Найди кусок кода, где единицы заполняются при записи и скопипасти его к себе в обработку.
10 Wobland
 
03.04.14
13:47
(8) да ты успокойся! я сто раз так делал
11 Triton_11
 
03.04.14
13:48
(10) вот програмный код где необходимо внести изменения
Товары.Очистить();
    Тек = Новый ЧтениеТекста("C:\pos.rep");
    стр = Тек.ПрочитатьСтроку();
    Пока стр <> неопределено Цикл
        Д = Товары.Добавить();
        Стр1 = СтрЗаменить(Стр,";",Символы.ПС);
        Стр = тек.ПрочитатьСтроку();
        А = СтрПолучитьСтроку(Стр1,1);
        Б = СтрПолучитьСтроку(Стр1,2);
        Для каждого Р Из Товары Цикл
            Если Р.Номенклатура  = Справочники.Номенклатура.ПустаяСсылка()И Р.Характеристики = Справочники.ХарактеристикиНоменклатуры.ПустаяСсылка() Тогда
                Если А = "лопата" И Б = "совковая" Тогда
                    Спр = Справочники.Номенклатура.СоздатьЭлемент();
                    Спр.Наименование = А;
                    Спр.ВестиУчетПоХарактеристикам = Истина;
                    Спр.Артикул = "Л1";
                    Спр.НаименованиеПолное = "Лопата";
                    Спр.БазоваяЕдиницаИзмерения = Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию("шт");
                    Спр.ВидНоменклатуры = Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Инвентарь");
                    Спр.Записать();
                    Спр.ЕдиницаДляОтчетов = Справочники.ЕдиницыИзмерения.НайтиПоРеквизиту("ЕдиницаПоКлассификатору","Штука");
                    Спр.ЕдиницаХраненияОстатков = Справочники.ЕдиницыИзмерения.НайтиПоРеквизиту("ЕдиницаПоКлассификатору","Штука");
                    Спр.Записать();
                    Спр1 = Справочники.ХарактеристикиНоменклатуры.СоздатьЭлемент();
                    Спр1.Владелец = Справочники.Номенклатура.НайтиПоНаименованию(А);
                    Спр1.Наименование = Б;
                    Спр1.Записать();
                    Спр.Записать();
                КонецЕсли;
            КонецЕсли;
            Д.Номенклатура = Справочники.Номенклатура.НайтиПоНаименованию(СтрПолучитьСтроку(Стр1,1));
            Д.Характеристики = Справочники.ХарактеристикиНоменклатуры.НайтиПоНаименованию(СтрПолучитьСтроку(Стр1,2));
            Д.Количество = СтрПолучитьСтроку(Стр1,3);
            Д.Цена = СтрПолучитьСтроку(Стр1,4);
            Д.Сумма = Д.Количество * Д.Цена;
        КонецЦикла;
12 Wobland
 
03.04.14
13:50
>Если А = "лопата" И Б = "совковая" Тогда
всё сразу поломается, когда появится штыковая
13 Wobland
 
03.04.14
13:52
названия переменных ниспосланы богами. сделай с нуля. только медленно и вдумчиво
14 ICWiner
 
03.04.14
13:54
Он у тебя вылетает на первом записать, а только после этого ты единицу присваиваешь... Если еще ищешь правильно.
15 Triton_11
 
03.04.14
13:54
(13) не появится мне надо программно записать справочник
чтобы автоматически заполнялись реквизиты документа
Спр.ЕдиницаДляОтчетов = ?
Спр.ЕдиницаХраненияОстатков = ?
16 13_Mult
 
03.04.14
13:57
(0)Где то я уже это видел ;-)
17 fisher
 
03.04.14
13:57
А и Б сидели на трубе
Одна - совковая, другая - лопата
Два веселых гуся
18 13_Mult
 
03.04.14
14:01
(15) см. регистр сведений, но там сложнее покажется ).
19 13_Mult
 
03.04.14
14:03
(18) + будешь записывать рег св, осторожно, не убей все записи )
20 Triton_11
 
03.04.14
14:07
(19) ну как мне при программном записи справочника автоматически заполнять эти реквизиты
21 Triton_11
 
03.04.14
14:07
(20) вручную они автоматически заполняются
22 Wobland
 
03.04.14
14:08
(21) а как?
23 Triton_11
 
03.04.14
14:09
(22) ну открываешь справочник нажимаешь кнопку записать они автоматически заполняются
24 13_Mult
 
03.04.14
14:12
(23)
1. посмотри как справочник это делает при записи
2. запиши сам в рег св новую еди.зм с владельцем твоего нового справочника.
3. поднять левую руку и сказать: "а ну её на..."
25 Wobland
 
03.04.14
14:13
(23) тогда всё просто. открой форму, нажи
26 bolobol
 
03.04.14
14:42
Позвать программиста предлагали?
27 YF
 
03.04.14
14:54
(26) сначала переводчика на русский
28 Triton_11
 
03.04.14
15:58
(12) система поломалась как мне можно выбрать только номенклатуру которая в системе не присутствует а есть в текстовом редакторе
29 Wobland
 
03.04.14
16:03
сначалазаставитьсистемупоиметьнедостающуюноменклатуру
30 Tateossian
 
03.04.14
16:07
тест
31 Tateossian
 
03.04.14
16:08
Triton_11 Тест