7.7 Сумма в цикле

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем igorekkrav, 8 апр 2011.

  1. TopicStarter Overlay
    igorekkrav
    Offline

    igorekkrav Опытный в 1С

    Регистрация:
    29 апр 2010
    Сообщения:
    223
    Симпатии:
    0
    Баллы:
    26
    Не могу сообразить помогите пожалуйста. Как можно мне получить итог по (Сумма) по всем документам заявка.
    Эта обработка выводит поочередно все суммы в документах Заявка.

    Код:
    докЗаявка = СоздатьОбъект("Документ");
    докЗаявка.ВыбратьПодчиненныеДокументы(,, ТекущийДокумент());      
    Пока докЗаявка.ПолучитьДокумент() = 1 Цикл    
    Если докЗаявка.Вид() = "Заявка" Тогда
    
    докЗаявка.ВыбратьСтроки();
    
    Пока докЗаявка.ПолучитьСтроку() = 1 Цикл
    // Находим строку...
    Сумма = докЗаявка.Сумма;
    Сообщить (""+Сумма+"");
    КонецЦикла;    
    КонецЕсли;
    КонецЦикла;
    
    
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Хм... Там как правило стоит крыж "итог по колонке"
    Код:
    ОбщаяСумма=0;
    докЗаявка = СоздатьОбъект("Документ");    
    докЗаявка.ВыбратьПодчиненныеДокументы(,, ТекущийДокумент());          
    Пока докЗаявка.ПолучитьДокумент() = 1 Цикл        
    Если докЗаявка.Вид() <> "Заявка" Тогда            
    Продолжить;
    КонецЕсли;
    ОбщаяСумма=ОбщаяСумма+докЗаявка.Итог("Сумма");
    КонецЦикла;
    Сообщить(ОбщаяСумма);
    
    
    
    
    В данном случае выбираются ВСЕ заявки (проведенные/не проверденные/помеченные на удаление)
  3. TopicStarter Overlay
    igorekkrav
    Offline

    igorekkrav Опытный в 1С

    Регистрация:
    29 апр 2010
    Сообщения:
    223
    Симпатии:
    0
    Баллы:
    26
    Да насчет помеченные на удаление мне стоит задуматься:( Это получается только запросом?
  4. Mitay_D
    Offline

    Mitay_D Опытный в 1С

    Регистрация:
    16 фев 2010
    Сообщения:
    314
    Симпатии:
    0
    Баллы:
    26
    ПометкаУдаления()
    Синтаксис:
    ПометкаУдаления()
    Назначение:
    Возвращает флаг пометки удаления документа:
    1 - если на документе стоит пометка удаления,
    0 - если нет пометки удаления.
    Замечание:
    Метод можно использовать только для объектов, созданных функцией СоздатьОбъект.
  5. TopicStarter Overlay
    igorekkrav
    Offline

    igorekkrav Опытный в 1С

    Регистрация:
    29 апр 2010
    Сообщения:
    223
    Симпатии:
    0
    Баллы:
    26
    Спасибо понял!!!
  6. TopicStarter Overlay
    igorekkrav
    Offline

    igorekkrav Опытный в 1С

    Регистрация:
    29 апр 2010
    Сообщения:
    223
    Симпатии:
    0
    Баллы:
    26
    Не как не могу вставить правило сюда
    Код:
    Если (докЗаявка.Вид() <> "Заявка") И (док.ПометкаУдаления() = 0) Тогда
    
    Не проверяет на помеченные на удаление
  7. Dmitriy_76
    Offline

    Dmitriy_76 Опытный в 1С Команда форума

    Регистрация:
    26 мар 2011
    Сообщения:
    2.174
    Симпатии:
    13
    Баллы:
    29
    Вроде как в твоем случае ПометкаУдаления() с единичкой надо сравнивать
  8. TopicStarter Overlay
    igorekkrav
    Offline

    igorekkrav Опытный в 1С

    Регистрация:
    29 апр 2010
    Сообщения:
    223
    Симпатии:
    0
    Баллы:
    26
    Если так

    Код:
    ОбщаяСумма=0;
    докЗаявка = СоздатьОбъект("Документ");    
    докЗаявка.ВыбратьПодчиненныеДокументы(,, ТекущийДокумент()); 
    
    Пока докЗаявка.ПолучитьДокумент() = 1 Цикл
    Если (докЗаявка.Вид() <> "Заявка") И (докЗаявка.ПометкаУдаления() = 1) Тогда            
    Продолжить;  
    КонецЕсли;  
    ОбщаяСумма=ОбщаяСумма+докЗаявка.Итог("Сумма");
    КонецЦикла;
    Сообщить(ОбщаяСумма);
    
    
    ОбщаяСумма=ОбщаяСумма+докЗаявка.Итог("Сумма");
    {Документ.Счет.Форма.Модуль(1054)}: Неверное имя реквизита!

    Код:
    Если докЗаявка.ПометкаУдаления() = 0
    
    
    тогда проходит и проведенные и непроведенные
  9. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    нет такого реквизита ТЧасти или не стоит итог по колонке

    Метод ПометкаУдаления() определяет только помечен документ на удаление или нет....

    Если нужно выбирать только проведенные - обратите внимание на метод Проведен()
  10. TopicStarter Overlay
    igorekkrav
    Offline

    igorekkrav Опытный в 1С

    Регистрация:
    29 апр 2010
    Сообщения:
    223
    Симпатии:
    0
    Баллы:
    26
    Спасибо!!
    Сделал благодаря вашей помощи!!

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