Имя: Пароль:
1C
1С v8
Программое создание документа Поступление товаров в БП 2.0
,
0 pers200590
 
17.03.14
06:49
Здравствуйте, уважаемые форумчане
Подскажите пожалуйста, есть процедура которая создает документ поступление недостающих товаров. как в обработке указать что не используется НДС?

Процедура СозданиеОприходованияНаНедостающийТоварНажатие(Элемент)

        ДокО=ДокументПриход.ПолучитьОбъект()  ;


Для Каждого СтрД из СписокДок цикл
        Сообщить ("Обробатывается документ: "+СтрД.Ссылка);
    Для Каждого СтрТ из СтрД.Ссылка.Товары цикл
        Отбор=Новый Структура;
        Отбор.Вставить("Субконто1", СтрТ.Номенклатура);
        Отбор.Вставить("Счет", ПланыСчетов.Хозрасчетный.ТоварыНаСкладах);
        Отбор.Вставить("Субконто3", СтрД.Ссылка.Склад);
        Остаток=РегистрыБухгалтерии.Хозрасчетный.Остатки(СтрД.Ссылка.Дата, ,Отбор);
        Если СтрТ.Номенклатура.Наименование="Рычаг отжимной  кор.сцеп.Т-4 лапка" тогда
            Сообщить("");
        КонецЕсли;
        Если Остаток.Количество()=0 тогда
            Ост=0
        иначе    
            Ост=Остаток[0].КоличествоОстатокДт-Остаток[0].КоличествоОстатокКт;
        КонецЕсли;
        
        Если СтрТ.Количество>Ост тогда
            СтрО=ДокО.Товары.Добавить();
            СтрО.Номенклатура=СтрТ.Номенклатура;
            СтрО.Количество=СтрТ.Количество-Ост;
            СтрО.Цена=СтрТ.Цена/1.05;
            СтрО.Сумма=СтрО.Количество*СтрО.Цена;
            СтрО.СуммаНДС=СтрО.Количество*СтрО.Цена*0.18;
            СтрО.СтавкаНДС=перечисления.СтавкиНДС.НДС18;
            СтрО.СчетУчета=ПланыСчетов.Хозрасчетный.ТоварыНаСкладах;
            СтрО.СчетУчетаНДС=ПланыСчетов.Хозрасчетный.НДСпоПриобретеннымМПЗ;
        КонецЕсли;
        КонецЦикла;
        
        ДокО.Записать(РежимЗаписиДокумента.Проведение);
        Док=СтрД.Ссылка.ПолучитьОбъект();
        Док.Записать(РежимЗаписиДокумента.Проведение);
КонецЦикла;
1 pers200590
 
17.03.14
06:49
И вообще укажите пожалуйста на ошибки
2 mehfk
 
17.03.14
06:54
Здесь весь код одна сплошная ошибка.
3 pers200590
 
17.03.14
06:57
ну а как тогда
4 pers200590
 
17.03.14
06:57
я в обработке получаю список документов реализации вот этим кодом
Процедура СозданиеСпискаРеализацииНажатие(Элемент)
Запрос=Новый Запрос;
Запрос.Текст=
"ВЫБРАТЬ
|    РеализацияТоваровУслуг.Ссылка
|ИЗ
|    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
|ГДЕ
|    РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаОт И &ДатаДо
|    И РеализацияТоваровУслуг.Организация = &Организация";
запрос.УстановитьПараметр("датаОт",ДатаОт);
Запрос.УстановитьПараметр("ДатаДо",КонецДня(ДатаДо));
Запрос.УстановитьПараметр("Организация",организация);
Выборка=Запрос.Выполнить();
СписокДок.Загрузить(Выборка.Выгрузить());

КонецПроцедуры
5 pers200590
 
17.03.14
06:58
ну а потом создаю документ поступления недостающих товаров
6 pers200590
 
17.03.14
07:02
В примере у меня НДС работает, а вот как сделать без ндс
7 Мимохожий Однако
 
17.03.14
07:21
В созданном документе обойди все строки и установи ставку без НДС, а сумму НДС приравняй к нулю.
8 pers200590
 
17.03.14
07:56
подскажите а как установить определенную дату созданного документа
9 pers200590
 
17.03.14
07:56
и подставить необходимого контрагента
10 Рэйв
 
17.03.14
08:15
(0)Что-то не видно где ты создаешь новый документ
11 Рэйв
 
17.03.14
08:16
Но насколько я помню в стандартных чтобы не учитывать НДС надо

Док.УчитыватьНДС=Ложь;
12 azt-yur
 
17.03.14
08:17
(8),(9)
ДокО.Дата = Дата;
ДокО.Контрагент = Контрагент;

А вообще лучше получить запросом отрицательные остатки на конец периода, добавить их в документ поступления и уже затем при необходимости перепровести документы.
13 13_Mult
 
17.03.14
08:19
А ещё лучше сделать контроль отрицательных остатков ))
Программист всегда исправляет последнюю ошибку.