8.х Лимит

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Эмиль0690, 25 дек 2015.

  1. TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.755
    Симпатии:
    146
    Баллы:
    104
    Дата на которую вам нужно получить данные. Вроде же понятно?
  2. TopicStarter Overlay
    Эмиль0690
    Offline

    Эмиль0690 Опытный в 1С

    Регистрация:
    3 фев 2014
    Сообщения:
    290
    Симпатии:
    2
    Баллы:
    29
    и я рад что Вы все таки помогли мне:D
  3. TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.755
    Симпатии:
    146
    Баллы:
    104
    Почему?
  4. TopicStarter Overlay
    Эмиль0690
    Offline

    Эмиль0690 Опытный в 1С

    Регистрация:
    3 фев 2014
    Сообщения:
    290
    Симпатии:
    2
    Баллы:
    29
    нет не понятно, и каждый день я должен вставить дату?
    а нельзя ли получить СрезПоследних?
    --- Объединение сообщений, 11 фев 2016 ---
    вставляя одну ) получаю три ошибки
    Код:
    {Документ.РозничнаяПродажа.МодульОбъекта(87,92)}: Неопознанный оператор
        Запрос.УстановитьПараметр("Момент", Новый Граница(КонецДня(ДатаСреза),ВидГраницы.Включая))<<?>>); (Проверка: Сервер)
    {Документ.РозничнаяПродажа.МодульОбъекта(89,31)}: Ошибка в выражении
        Результат = Запрос.Выполнить(<<?>>); (Проверка: Сервер)
    {Документ.РозничнаяПродажа.МодульОбъекта(282,36)}: Обнаружено логическое завершение исходного текста модуля
        Движение.СуммаNC = СуммаПродажиNC;<<?>> (Проверка: Сервер)
    
  5. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.549
    Симпатии:
    716
    Баллы:
    204
    Потому что по умолчанию она "Включая" :)

  6. TopicStarter Overlay
    Эмиль0690
    Offline

    Эмиль0690 Опытный в 1С

    Регистрация:
    3 фев 2014
    Сообщения:
    290
    Симпатии:
    2
    Баллы:
    29
    ребята что делать дальше?
  7. TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.755
    Симпатии:
    146
    Баллы:
    104
    А я не правильно понял... я думал ты имел ввиду вообще не использовать границу :)

    Я пишу всегда "Включая" или "Исключая". Так наглядней :)
  8. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.549
    Симпатии:
    716
    Баллы:
    204
    Проверять синтаксис в строке:

    Запрос.УстановитьПараметр("Момент", Новый Граница(КонецДня(ДатаСреза),ВидГраницы.Включая))<<?>>);

    Обнаруженную ошибку исправить.
  9. TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.755
    Симпатии:
    146
    Баллы:
    104
    А дальше Эмиль разбираться нужно с ошибками.
    Код:
     Запрос.УстановитьПараметр("Момент", Новый Граница(КонецДня(ДатаСреза),ВидГраницы.Включая))<<?>>); (Проверка: Сервер)
    Лишняя скобка в конце.
    Тут у тебя где в коде синтаксические ошибки....
  10. TopicStarter Overlay
    Эмиль0690
    Offline

    Эмиль0690 Опытный в 1С

    Регистрация:
    3 фев 2014
    Сообщения:
    290
    Симпатии:
    2
    Баллы:
    29
    Добрый день!
    вот правильный код!
    Благодаря alexburn
    Код:
        //ВТОРОЙ ВАРИАНТ 22222222222222222  все хужеее))
        Запрос=Новый Запрос;
        Запрос.Текст = "ВЫБРАТЬ
                      |    РозничнаяПродажа.Контрагент,
                      |    СУММА(РозничнаяПродажа.СуммаПродажиNC) КАК СуммаПродажиNC
                      |ПОМЕСТИТЬ Клиенты
                      |ИЗ
                      |    Документ.РозничнаяПродажа КАК РозничнаяПродажа
                      |ГДЕ
                      |    РозничнаяПродажа.Контрагент = &Контрагент
                      |
                      |СГРУППИРОВАТЬ ПО
                      |    РозничнаяПродажа.Контрагент
                      |;
                      |
                      |////////////////////////////////////////////////////////////////////////////////
                      |ВЫБРАТЬ
                      |    ВзаиморасчетыПоКонтрагентамОстатки.Клиент,
                      |    ВзаиморасчетыПоКонтрагентамОстатки.ОстатокNCОстаток КАК ОстатокNCОстаток
                      |ПОМЕСТИТЬ Взаиморасчеты
                      |ИЗ
                      |    РегистрНакопления.ВзаиморасчетыПоКонтрагентам.Остатки(&Момент, Клиент = &Клиент) КАК ВзаиморасчетыПоКонтрагентамОстатки
                      |;
                      |
                      |////////////////////////////////////////////////////////////////////////////////
                      |ВЫБРАТЬ
                      |    ЛимитыСрезПоследних.Клиент,
                      |    ЛимитыСрезПоследних.Лимит
                      |ПОМЕСТИТЬ Лимиты
                      |ИЗ
                      |    РегистрСведений.Лимиты.СрезПоследних(&Момент, Клиент = &Клиент) КАК ЛимитыСрезПоследних
                      |;
                      |
                      |////////////////////////////////////////////////////////////////////////////////
                      |ВЫБРАТЬ
                      |    Клиенты.Контрагент,
                      |    Клиенты.СуммаПродажиNC,
                      |    ЕСТЬNULL(Взаиморасчеты.ОстатокNCОстаток, 0) КАК ОстатокNCОстаток,
                      |    ЕСТЬNULL(Лимиты.Лимит, 0) КАК Лимит
                      |ИЗ
                      |    Клиенты КАК Клиенты
                      |        ЛЕВОЕ СОЕДИНЕНИЕ Взаиморасчеты КАК Взаиморасчеты
                      |        ПО Клиенты.Контрагент = Взаиморасчеты.Клиент
                      |        ЛЕВОЕ СОЕДИНЕНИЕ Лимиты КАК Лимиты
                      |        ПО Клиенты.Контрагент = Лимиты.Клиент";
      
      
        Запрос.УстановитьПараметр("Контрагент", ЭтотОбъект.Контрагент);
        Запрос.УстановитьПараметр("Клиент", ЭтотОбъект.Контрагент);
        //Запрос.УстановитьПараметр("Момент", МоментВремени());
        //Запрос.УстановитьПараметр("Ссылка", Ссылка);
        Запрос.УстановитьПараметр("Момент", Новый Граница(КонецДня(ТекущаяДата()),ВидГраницы.Включая));
      
        Результат = Запрос.Выполнить();
      
        ВыборкаДетальныеЗаписи = Результат.Выбрать();
      
        //Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
      
        //Если ВыборкаДетальныеЗаписи.Следующий() Тогда
        //    ПланируемыйДолг = ВыборкаДетальныеЗаписи.СуммаПродажиNC + ВыборкаДетальныеЗаписи.ОстатокNCОстаток;  
        //    Если ПланируемыйДолг > ВыборкаДетальныеЗаписи.Лимит Тогда
        //        Сообщить(("Превышен размер задолженности!  Сумма задолжености: "+Строка(ВыборкаДетальныеЗаписи.ОстатокNCОстаток)));
        //        Отказ = Истина;
        //    КонецЕсли;  
        //КонецЕсли;
        //КонецЦикла;
        //Запрос=Новый Запрос;
        //
        Если ВыборкаДетальныеЗаписи.Следующий() Тогда
            ПланируемыйДолг = ЭтотОбъект.СуммаПродажиNC+ВыборкаДетальныеЗаписи.ОстатокNCОстаток - СуммаПриходаNC;
            Если ПланируемыйДолг > ВыборкаДетальныеЗаписи.Лимит Тогда
                //Сообщить(("Превышен размер задолженности!  Сумма задолжености: "+Строка(ВыборкаДетальныеЗаписи.ОстатокNCОстаток)) + "    Лимит: " + Строка(ВыборкаДетальныеЗаписи.Лимит));
              Строка(ВыборкаДетальныеЗаписи.ОстатокNCОстаток)) + ЭтотОбъект.СуммаПродажиNC - Строка(ВыборкаДетальныеЗаписи.Лимит)) - СуммаПриходаNC)) ;
    
                Отказ = Истина;
            КонецЕсли;
        КонецЕсли;
    всем спасибо!
Похожие темы
  1. Arseni
    Ответов:
    1
    Просмотров:
    965
  2. bolonka
    Ответов:
    1
    Просмотров:
    697
  3. vovakent
    Ответов:
    4
    Просмотров:
    2.121
  4. gor242
    Ответов:
    6
    Просмотров:
    747
Загрузка...

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