Версия для печати темы (https://pro1c.org.ua/index.php?s=0a979af5d66ae054b62156030be3374a&showtopic=3832)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 7.7 _ Заполнить остатками по складу

Автор: l2d808 15.06.11, 14:53

Платформа 7,7
Подскажите пожалуйста. Как сделать кнопку в расходной накладной, что-бы заполняло ее (Расходную накладную) остатками по складу. Я реально запутался с бухгалтерскими итогами. Помогите убогому ) Заранее благодарен.

Автор: DartRomanius 15.06.11, 15:02

Цитата(l2d808 @ 15.06.11, 15:53) *
Платформа 7,7
Подскажите пожалуйста. Как сделать кнопку в расходной накладной, что-бы заполняло ее (Расходную накладную) остатками по складу. Я реально запутался с бухгалтерскими итогами. Помогите убогому ) Заранее благодарен.


Читаем СП по поводу ВыполнитьЗапрос(<?>,,,,,,,)

Автор: l2d808 15.06.11, 15:07

Ит = СоздатьОбъект("БухгалтерскиеИтоги");
            Ит.ИспользоватьСубконто(ВидыСубконто.ТМЦ,, 1, 1);
            Ит.ИспользоватьСубконто(ВидыСубконто.МестаХранения,Склад,1);
            Ит.ВыполнитьЗапрос(,ДатО,"20,22,25,26,28", ,, 3,, "СК");
            Ит.ВыбратьСубконто(ВидыСубконто.МестаХранения,Склад,1);          
            Пока Ит.ПолучитьСубконто(ВидыСубконто.МестаХранения) = 1 Цикл
                Ит.ВыбратьСубконто(ВидыСубконто.ТМЦ,,1);
                    кво=Ит.СКД(3);
                    ТМЦ=Ит.Субконто(2);
                    Сообщить(ТМЦ);
                    Сообщить(кво);
            КонецЦикла;


Где-то тут динозавр зарыт, а вот где? Мне не выдает ничего. (((
Подскажите плз

Автор: DartRomanius 15.06.11, 15:28

Цитата(l2d808 @ 15.06.11, 16:07) *
Ит = СоздатьОбъект("БухгалтерскиеИтоги");
Ит.ИспользоватьСубконто(ВидыСубконто.ТМЦ,, 1, 1);
Ит.ИспользоватьСубконто(ВидыСубконто.МестаХранения,Склад,1);
Ит.ВыполнитьЗапрос(,ДатО,"20,22,25,26,28", ,, 3,, "СК");
Ит.ВыбратьСубконто(ВидыСубконто.МестаХранения,Склад,1);
Пока Ит.ПолучитьСубконто(ВидыСубконто.МестаХранения) = 1 Цикл
Ит.ВыбратьСубконто(ВидыСубконто.ТМЦ,,1);
кво=Ит.СКД(3);
ТМЦ=Ит.Субконто(2);
Сообщить(ТМЦ);
Сообщить(кво);
КонецЦикла;

Где-то тут динозавр зарыт, а вот где? Мне не выдает ничего. (((
Подскажите плз



Ит.ВыбратьСубконто(ВидыСубконто.МестаХранения,Склад,1);
на
Ит.ВыбратьСубконто(2);

Ит.ВыбратьСубконто(ВидыСубконто.ТМЦ,,1); ????????? єто зачем так?

Ит = СоздатьОбъект("БухгалтерскиеИтоги");
Ит.ИспользоватьСубконто(ВидыСубконто.ТМЦ,, 1, 1);
Ит.ИспользоватьСубконто(ВидыСубконто.МестаХранения,Склад,1);

Ит.ВыполнитьЗапрос(,ДатО,"20,22,25,26,28", ,, 3,, "СК");

Ит.ВыбратьСубконто(2,1);
Пока Ит.ПолучитьСубконто(2) = 1 Цикл
    //Ит.ВыбратьСубконто(ВидыСубконто.ТМЦ,,1);
    кво=Ит.СКД(3);
    ТМЦ=Ит.Субконто(2);
    Сообщить(ТМЦ);
    Сообщить(кво);
КонецЦикла;


в коде могу кончено очень!!!! ошибится. так-как на глаз. smile.gif
надеюсь идея понятна.

Автор: l2d808 15.06.11, 16:53

У меня получилось вот так:

ДатаДок=ТекущаяДата();
    Ит = СоздатьОбъект("БухгалтерскиеИтоги");
    Ит.ИспользоватьСубконто(ВидыСубконто.МестаХранения,МестоХранения,2);
    Ит.ИспользоватьСубконто(ВидыСубконто.ШтрихКод,, 1, 1);
    Ит.ИспользоватьСубконто(ВидыСубконто.ТМЦ);
    Ит.ВыполнитьЗапрос(ДатаДок, ДатаДок, "ШК",,, 1,, "СК");
    Ит.ВыбратьСубконто(2); Ном=0;  Ном1=0;
    Пока Ит.ПолучитьСубконто(2) = 1 Цикл  
            Если Ит.СКД(3)-Ит.СКК(3) > 0 Тогда
                //Продолжить;
        Если Ит.Субконто(2).ЭтоГруппа()=1 Тогда
            Продолжить;
        КонецЕсли;    
        НоваяСтрока();
        ШтрихКод = Ит.Субконто(2);
        ТМЦ = Ит.Субконто(3);
        Артикул = ТМЦ.Артикул;
        Вес = ШтрихКод.Наименование;
        сообщить(Артикул);
        сообщить(ТМЦ);
        сообщить(Вес);
        сообщить(ШтрихКод);
        Кво = 1;
    КонецЕсли;
    КонецЦикла;

Но теперь Уже вылез Второй трабл(((
Со вторым Уже завтра )))

Автор: 5_kopeek 15.06.11, 17:43

Цитата(l2d808 @ 15.06.11, 16:53) *
У меня получилось вот так:
...
    Ит.ИспользоватьСубконто(ВидыСубконто.ШтрихКод,, 1, 1);
    Ит.ИспользоватьСубконто(ВидыСубконто.ТМЦ);
    Ит.ВыполнитьЗапрос(ДатаДок, ДатаДок, "ШК",,, 1,, "СК");
...
        Если Ит.Субконто(2).ЭтоГруппа()=1 Тогда
            Продолжить;
        КонецЕсли;    
...
        ТМЦ = Ит.Субконто(3);
...

Если итоги по группам не нужны, зачем их выбирать?
Вероятно, чтобы использовать третье субконто, его необходимо сначала получить.

Автор: l2d808 16.06.11, 9:21

Цитата(5_kopeek @ 15.06.11, 17:43) *
Если итоги по группам не нужны, зачем их выбирать?
Вероятно, чтобы использовать третье субконто, его необходимо сначала получить.

Действительно. так намного проще. Спасибо.

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua