7.7 Не проставляются остатки

Тема в разделе "Отчеты и обработки для "1С:Предприятие 7.7"", создана пользователем Dzirt, 13 авг 2016.

  1. TopicStarter Overlay
    Dzirt
    Offline

    Dzirt

    Регистрация:
    13 авг 2016
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте, возникла необходимость создавать большие заявки на склад, артикул, количество и цена берётся из файла эксель, обработка всё делает, но не проставляет остатки в документе, а также единицы(шт, упаковки и тд), остаётся вручную. ставить единицы и тогда проставляются остатки, подскажите где я не прав и как поправить. Конфигурация ТиС типовая.

    Код:
    Функция СоздатьДоговор(ИмяФайла, Лист=1)
        Док = СоздатьОбъект("Документ.Договорсчет");      
        Прод = СоздатьОбъект("Справочник.Номенклатура");
        Валюта = СоздатьОбъект("Справочник.Валюты");
        Склад = СоздатьОбъект("Справочник.Склады");
        Фирма = СоздатьОбъект("Справочник.Фирмы");
        Счет = СоздатьОбъект("Справочник.БанковскиеСчета");   
       
       
        Док.Новый(); 
       
        Док.ДатаОплаты = ТекущаяДата();
        Док.ДатаОтгрузки = ТекущаяДата();
        Док.СпособРезервирования = Перечисление.СпособыРезервирования.Остаток;
        Док.ВидОперации = Перечисление.ВидыОперацийЗаявок.НаСклад; 
       
        Склад.НайтиПоКоду("00001");
        Валюта.НайтиПоНаименованию("руб",0);
        Фирма.НайтиПоКоду("002"); 
        Счет.НайтиПоКоду("00000300");
       
       
       
        Док.Склад = Склад.ТекущийЭлемент(); 
        Док.Валюта = Валюта.ТекущийЭлемент();
           Док.Фирма = Фирма.ТекущийЭлемент();
           Док.БанковскийСчет = Счет.ТекущийЭлемент();
          
        //цикл добавления                   
        Попытка
            Ехсел=СоздатьОбъект("Excel.Application");
        Исключение
            Предупреждение("Excel на компьютере не установлен!");
            Возврат ПолучитьПустоеЗначение();
        КонецПопытки;  
        Книга=Ехсел.Workbooks;
        Книга.Open(Сокрлп(ИмяФайла));
        Диапозон=Ехсел.Sheets(Лист).Cells;
        ВсегоСтрок   =Диапозон.SpecialCells(11).Row;    // строка последней ячейки
        ВсегоСтолбцов=Диапозон.SpecialCells(11).Column; // столбец последней ячейки
        Сообщить("Количество строк:" +ВсегоСтрок);
        Сообщить("Количество столбцов:"+ВсегоСтолбцов);  
       
        Для Стр = 1 по ВсегоСтрок Цикл    
            Имя = СокрЛП(Диапозон.Cells(Стр,1).Value);
            Количество = СокрЛП(Диапозон.Cells(Стр,2).Value);
            Цена = СокрЛП(Диапозон.Cells(Стр,3).Value);     
           
            Док.НоваяСтрока();     
            Прод.НайтиПоНаименованию(Имя,0);
            Док.Номенклатура = Прод.ТекущийЭлемент();
            Док.Количество=Количество;
            Док.Цена = Цена;     
            Док.Курс = 1;
            Док.Коэффициент = 1;
           
            //Сообщить("Имя: "+Имя+" кол: "+Количество+" Цена: "+Цена);       
            Сообщить("Обработано "+Стр+" строк из "+ВсегоСтрок);
        КонецЦикла; 
        Ехсел.Application.Quit();
          
        Док.ДатаДок = ТекущаяДата();   
        Док.Записать();   
        //ОткрытьФорму("Документ.Договорсчет","");              
    КонецФункции
  2. Катюфка
    Offline

    Катюфка Профессионал в 1С

    Регистрация:
    3 июн 2013
    Сообщения:
    412
    Симпатии:
    72
    Баллы:
    54
    Здравствуйте.
    Разве в типовой есть документ ДоговорСчет?
    В любом случае я не вижу, где Вы устанавливаете единицу. Ее можно получить из Док. Номенклатура.
    Примерно так:
    Код:
                Док.Единица        = Док.Номенклатура.БазоваяЕдиница;
  3. TopicStarter Overlay
    Dzirt
    Offline

    Dzirt

    Регистрация:
    13 авг 2016
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Спасибо, это решило проблему, теперь есть и единица и остатки.

Поделиться этой страницей