Имя: Пароль:
1C
1С v8
Не подтягивается валютный контрагент.
0 murattick
 
24.07.19
17:30
Есть внешний отчет, по нему смотрят дебеторку, кто чего должен и на сколько просрочил. Всё прекрасно работало до того момента пока не пришел контрагент с валютным договором, и после того как он просрочил оплату в отчет ничего не попало. Как сделать так, чтобы и этот контрагент с валютным договором был в отчете? переводить доллар в рубль не обязательно. Пример запроса ->

ВЫБРАТЬ
    ХозрасчетныйДвиженияССубконто.Период КАК Период,
    ХозрасчетныйДвиженияССубконто.Регистратор КАК Регистратор,
    ХозрасчетныйДвиженияССубконто.Активность КАК Активность,
    ХозрасчетныйДвиженияССубконто.СчетДт КАК СчетДт,
    ХозрасчетныйДвиженияССубконто.СубконтоДт1 КАК Контрагент,
    ХозрасчетныйДвиженияССубконто.СубконтоДт2 КАК Договор,
    ХозрасчетныйДвиженияССубконто.СубконтоДт3 КАК ДокументРеализации,
    ХозрасчетныйДвиженияССубконто.Организация КАК Организация,
    ХозрасчетныйДвиженияССубконто.ВалютаДт КАК ВалютаДт,
    ХозрасчетныйДвиженияССубконто.Сумма КАК СуммаДокРеализации,
    0 КАК Приход
ПОМЕСТИТЬ ВТСчета
ИЗ
    РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(, , СчетДт = &СчетДт, , ) КАК ХозрасчетныйДвиженияССубконто

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ХозрасчетныйДвиженияССубконто.Период,
    ХозрасчетныйДвиженияССубконто.Регистратор,
    ХозрасчетныйДвиженияССубконто.Активность,
    ХозрасчетныйДвиженияССубконто.СчетКт,
    ХозрасчетныйДвиженияССубконто.СубконтоКт1,
    ХозрасчетныйДвиженияССубконто.СубконтоКт2,
    ХозрасчетныйДвиженияССубконто.СубконтоКт3,
    ХозрасчетныйДвиженияССубконто.Организация,
    ХозрасчетныйДвиженияССубконто.ВалютаКт,
    0,
    ХозрасчетныйДвиженияССубконто.Сумма
ИЗ
    РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(, , СчетКт = &СчетДт, , ) КАК ХозрасчетныйДвиженияССубконто
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТСчета.Контрагент КАК Контрагент,
    ВТСчета.Договор КАК Договор,
    ВТСчета.ДокументРеализации КАК ДокументРеализации,
    СУММА(ВТСчета.СуммаДокРеализации) КАК СуммаДокРеализации,
    СУММА(ВТСчета.Приход) КАК Приход
ПОМЕСТИТЬ ВТСчетаГрупп
ИЗ
    ВТСчета КАК ВТСчета

СГРУППИРОВАТЬ ПО
    ВТСчета.ДокументРеализации,
    ВТСчета.Контрагент,
    ВТСчета.Договор
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТСчетаГрупп.Контрагент КАК Контрагент,
    ВТСчетаГрупп.Договор КАК Договор,
    ВТСчетаГрупп.ДокументРеализации КАК ДокументРеализации,
    ВТСчетаГрупп.СуммаДокРеализации КАК СуммаДокРеализации,
    ВТСчетаГрупп.Приход КАК Приход,
    ВТСчетаГрупп.СуммаДокРеализации - ВТСчетаГрупп.Приход КАК СальдоДокумента
ПОМЕСТИТЬ ВТДолгов
ИЗ
    ВТСчетаГрупп КАК ВТСчетаГрупп
ГДЕ
    ВТСчетаГрупп.СуммаДокРеализации - ВТСчетаГрупп.Приход > 0
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТДолгов.Контрагент КАК Контрагент,
    ВТДолгов.Договор КАК Договор,
    ВТДолгов.ДокументРеализации КАК ДокументРеализации,
    ВТДолгов.СуммаДокРеализации КАК СуммаДокРеализации,
    ВТДолгов.Приход КАК Приход,
    ВТДолгов.СальдоДокумента КАК СальдоДокумента,
    РеализацияТоваровУслугУслуги.Номенклатура КАК Номенклатура,
    РеализацияТоваровУслугУслуги.Номенклатура.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
    ВЫБОР
        КОГДА РеализацияТоваровУслугУслуги.Ссылка.СуммаВключаетНДС
            ТОГДА РеализацияТоваровУслугУслуги.Сумма
        ИНАЧЕ РеализацияТоваровУслугУслуги.Сумма + РеализацияТоваровУслугУслуги.СуммаНДС
    КОНЕЦ КАК СтоимостьНоменклатурыДокумента
ПОМЕСТИТЬ ВТДолговНоменклатура
ИЗ
    ВТДолгов КАК ВТДолгов
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслугУслуги
        ПО ВТДолгов.ДокументРеализации = РеализацияТоваровУслугУслуги.Ссылка
ГДЕ
    РеализацияТоваровУслугУслуги.Сумма > 0

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ВТДолгов.Контрагент,
    ВТДолгов.Договор,
    ВТДолгов.ДокументРеализации,
    ВТДолгов.СуммаДокРеализации,
    ВТДолгов.Приход,
    ВТДолгов.СальдоДокумента,
    РеализацияТоваровУслугТовары.Номенклатура,
    РеализацияТоваровУслугТовары.Номенклатура.НоменклатурнаяГруппа,
    ВЫБОР
        КОГДА РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС
            ТОГДА РеализацияТоваровУслугТовары.Сумма
        ИНАЧЕ РеализацияТоваровУслугТовары.Сумма + РеализацияТоваровУслугТовары.СуммаНДС
    КОНЕЦ
ИЗ
    ВТДолгов КАК ВТДолгов
        ПОЛНОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
        ПО ВТДолгов.ДокументРеализации = РеализацияТоваровУслугТовары.Ссылка
ГДЕ
    РеализацияТоваровУслугТовары.Сумма > 0
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТДолговНоменклатура.Контрагент КАК Контрагент,
    ВТДолговНоменклатура.Договор КАК Договор,
    ВТДолговНоменклатура.ДокументРеализации КАК ДокументРеализации,
    ВТДолговНоменклатура.ДокументРеализации.СуммаДокумента КАК ДокументРеализацииСуммаДокумента,
    ВТДолговНоменклатура.Приход КАК Приход,
    ВТДолговНоменклатура.СальдоДокумента КАК СальдоДокумента,
    ВТДолговНоменклатура.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
    ВТДолговНоменклатура.СтоимостьНоменклатурыДокумента КАК СтоимостьНоменклатурыДокумента,
    ВТДолговНоменклатура.СтоимостьНоменклатурыДокумента * ВТДолговНоменклатура.СальдоДокумента / ВТДолговНоменклатура.ДокументРеализации.СуммаДокумента КАК СальдоНоменклатуры
ПОМЕСТИТЬ ВТДолговНом2
ИЗ
    ВТДолговНоменклатура КАК ВТДолговНоменклатура
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТДолговНом2.Контрагент КАК Контрагент,
    ВТДолговНом2.Договор КАК Договор,
    ВТДолговНом2.ДокументРеализации КАК ДокументРеализации,
    ВТДолговНом2.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
    ВТДолговНом2.Приход КАК Приход,
    ВТДолговНом2.СальдоДокумента КАК СальдоДокумента,
    СУММА(ВТДолговНом2.СальдоНоменклатуры) КАК СальдоНоменклатуры,
    ВТДолговНом2.Договор.УстановленСрокОплаты КАК ДоговорУстановленСрокОплаты,
    ВТДолговНом2.ДокументРеализации.Дата КАК ДокументРеализацииДата,
    ВЫБОР
        КОГДА ВТДолговНом2.Договор.УстановленСрокОплаты
            ТОГДА ВТДолговНом2.Договор.СрокОплаты
        ИНАЧЕ 15
    КОНЕЦ КАК СрокОплаты,
    ВЫБОР
        КОГДА ВТДолговНом2.ДокументРеализации.ДатаДокументаРеально = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
            ТОГДА ВТДолговНом2.ДокументРеализации.Дата
        ИНАЧЕ ВТДолговНом2.ДокументРеализации.ДатаДокументаРеально
    КОНЕЦ КАК ДатаДокументаРеально,
    ВТДолговНом2.ДокументРеализации.ДатаПолученияКлиентом КАК ДатаПолученияКлиентом
ПОМЕСТИТЬ ВТИтог
ИЗ
    ВТДолговНом2 КАК ВТДолговНом2

СГРУППИРОВАТЬ ПО
    ВТДолговНом2.Контрагент,
    ВТДолговНом2.Договор,
    ВТДолговНом2.ДокументРеализации,
    ВТДолговНом2.НоменклатурнаяГруппа,
    ВТДолговНом2.Приход,
    ВТДолговНом2.СальдоДокумента,
    ВТДолговНом2.Договор.УстановленСрокОплаты,
    ВТДолговНом2.ДокументРеализации.Дата,
    ВЫБОР
        КОГДА ВТДолговНом2.Договор.УстановленСрокОплаты
            ТОГДА ВТДолговНом2.Договор.СрокОплаты
        ИНАЧЕ 15
    КОНЕЦ,
    ВЫБОР
        КОГДА ВТДолговНом2.ДокументРеализации.ДатаДокументаРеально = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
            ТОГДА ВТДолговНом2.ДокументРеализации.Дата
        ИНАЧЕ ВТДолговНом2.ДокументРеализации.ДатаДокументаРеально
    КОНЕЦ,
    ВЫБОР
        КОГДА ВТДолговНом2.ДокументРеализации.ДатаПолученияКлиентом = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
            ТОГДА ВТДолговНом2.ДокументРеализации.ДатаПолученияКлиентом
        ИНАЧЕ ВТДолговНом2.ДокументРеализации.ДатаПолученияКлиентом
    КОНЕЦ,
    ВТДолговНом2.ДокументРеализации.ДатаПолученияКлиентом
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТИтог.Контрагент КАК Контрагент,
    ВТИтог.Договор КАК Договор,
    ВТИтог.ДокументРеализации КАК ДокументРеализации,
    ВТИтог.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
    ВТИтог.Приход КАК Приход,
    ВТИтог.СальдоДокумента КАК СальдоДокумента,
    ВТИтог.СальдоНоменклатуры КАК СальдоНоменклатуры,
    ВТИтог.ДоговорУстановленСрокОплаты КАК ДоговорУстановленСрокОплаты,
    ВТИтог.ДокументРеализацииДата КАК ДокументРеализацииДата,
    ВТИтог.СрокОплаты КАК СрокОплаты,
    ДОБАВИТЬКДАТЕ(ВТИтог.ДокументРеализацииДата, ДЕНЬ, ВТИтог.СрокОплаты) КАК ДатаОплаты,
    ДОБАВИТЬКДАТЕ(ВТИтог.ДатаДокументаРеально, ДЕНЬ, ВТИтог.СрокОплаты) КАК ДатаОплатыРеально,
    ВТИтог.ДатаДокументаРеально КАК ДатаДокументаРеально,
    ВЫБОР
        КОГДА ВТИтог.ДатаПолученияКлиентом = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
            ТОГДА NULL
        ИНАЧЕ ДОБАВИТЬКДАТЕ(ВТИтог.ДатаПолученияКлиентом, ДЕНЬ, ВТИтог.СрокОплаты)
    КОНЕЦ КАК ДатаОплатыПослеПолучения,
    ВТИтог.ДатаПолученияКлиентом КАК ДатаПолученияКлиентом
ПОМЕСТИТЬ ВТИтог2
ИЗ
    ВТИтог КАК ВТИтог
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТИтог2.Контрагент КАК Контрагент,
    ВТИтог2.Договор КАК Договор,
    ВТИтог2.ДокументРеализации КАК ДокументРеализации,
    ВТИтог2.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
    ВТИтог2.Приход КАК Приход,
    ВТИтог2.СальдоДокумента КАК СальдоДокумента,
    ВТИтог2.СальдоНоменклатуры КАК СальдоНоменклатуры,
    ВТИтог2.ДоговорУстановленСрокОплаты КАК ДоговорУстановленСрокОплаты,
    ВТИтог2.ДокументРеализацииДата КАК ДокументРеализацииДата,
    ВТИтог2.СрокОплаты КАК СрокОплаты,
    ВТИтог2.ДатаОплаты КАК ДатаОплаты,
    ВТИтог2.ДатаДокументаРеально КАК ДатаДокументаРеально,
    ВТИтог2.ДатаОплатыРеально КАК ДатаОплатыРеально,
    ВТИтог2.ДатаОплатыПослеПолучения КАК ДатаОплатыПослеПолучения,
    ВТИтог2.ДатаПолученияКлиентом КАК ДатаПолученияКлиентом,
    ВЫБОР
        КОГДА ВТИтог2.ДатаОплатыРеально < &ТекущаяДата
            ТОГДА ВТИтог2.СальдоНоменклатуры
        ИНАЧЕ 0
    КОНЕЦ КАК Просрочка,
    ВЫБОР
        КОГДА ВТИтог2.ДатаОплатыПослеПолучения < &ТекущаяДата
            ТОГДА ВТИтог2.СальдоНоменклатуры
        ИНАЧЕ 0
    КОНЕЦ КАК ПросрочкаПослеПолучения,
    ВЫБОР
        КОГДА ДОБАВИТЬКДАТЕ(ВТИтог2.ДатаОплатыПослеПолучения, МЕСЯЦ, 1) <= &ТекущаяДата
            ТОГДА ВТИтог2.СальдоНоменклатуры
        ИНАЧЕ 0
    КОНЕЦ КАК ПросрочкаБольшеМесяцаПослеПолучения
ИЗ
    ВТИтог2 КАК ВТИтог2
ГДЕ
    ВТИтог2.ДокументРеализации.Дата >= &ДатаНачала
1 vicof
 
24.07.19
17:35
Консоль запросов использовать не?
2 Amra
 
24.07.19
17:35
Валютные проводки проходят не по тому счету, что рублевые, а в запросе отбор по счету
3 hhhh
 
24.07.19
17:36
(0) как-то так

СчетДт В (&СписокСчетовДебиторки)
4 murattick
 
24.07.19
17:38
(3) я сам не программист 1с ниразу. Подскажите где подправить пожалуйста
5 hhhh
 
24.07.19
17:46
(4) тогда программиста позовите. Чего вы хренью страдаете?
6 murattick
 
24.07.19
17:50
(5) так нет его от слова совсем. Эту всю хрень повесили на меня. Восновном требуется только обновлять конфу и мелкие правки в макетах, с этим проблем не возникает, а вот с запросами у меня тяжко очень.
7 vicof
 
24.07.19
17:51
(6) а зп подняли?)
8 murattick
 
24.07.19
17:53
(7) да это произошло как только пришел в компанию, где-то год назад, так что вопроса не возникло...)
9 murattick
 
25.07.19
09:12
подскажите как исправить запрос, чтобы он шел по рублевым счетам и по валютным? конвертация в рубль не обязательна. Конечно в идеале конвертировать или знак доллара ставить. Могу выложить внешний отчет, если требуется.
10 catena
 
25.07.19
09:21
(9)Сколько платишь?
11 murattick
 
25.07.19
09:29
(10) Забавно) мнеб тоже кто заплатил. Вообще надеюсь на помощь
12 Мимохожий Однако
 
25.07.19
09:32
(11) см (1). Тебе нужна удочка, а не рыба. Или плати.
13 murattick
 
25.07.19
09:35
(12) ткните хоть пальцем, где указывается, что запрос идёт только по рублевым счетам?
14 catena
 
25.07.19
09:37
(13)Отбор по счету видишь в запросе?
15 murattick
 
25.07.19
09:39
(14) Правильно я понимаю, что это вот ->

ИЗ
    РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(, , СчетДт = &СчетДт, , ) КАК ХозрасчетныйДвиженияССубконто
16 catena
 
25.07.19
09:42
(15)Да, в (3) сказали, что поправить в запросе, а потом в коде ищи по имени параметра, где значение устанавливается.
17 murattick
 
25.07.19
09:50
(16) Спасибо. Начинаю втыкать что к чему. Т.е. "&СчетДт" где-то должен быть прописан вручную чтоль?
Смотрю по схеме компановки данных, в параметрах СчетДт:
Тип - ПланСчетовСсылка.Хозрасчетный
Значение - ПланСчетов.Хозрасчетный.РасчетыСПокупателями

это оно вообще?
18 Михаил Козлов
 
25.07.19
09:56
(17) Да. Это рублевый счет (62.01). Чем штатный отчет не подходит?
19 Мимохожий Однако
 
25.07.19
09:57
(17) Оно )) Теперь в этой компоновке смени в значениях параметра выбор из списка значений в запросе измени отбор как предлагали. Вместо условия = , сделай в (&...)
20 Мимохожий Однако
 
25.07.19
09:57
(18) Не мешай )
21 murattick
 
25.07.19
10:10
(19) Не вывел всё равно валютных. Поставил галку доступен список значений в компоновке (значения ПланСчетов.Хозрасчетный.РасчетыСПокупателями) в запросе переделал в эти два:

ВЫБРАТЬ
    ХозрасчетныйДвиженияССубконто.Период КАК Период,
    ...
    ХозрасчетныйДвиженияССубконто.Сумма КАК СуммаДокРеализации,
    0 КАК Приход
ПОМЕСТИТЬ ВТСчета
ИЗ
    РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(, , СчетДт В (&СчетДт), , ) КАК ХозрасчетныйДвиженияССубконто

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ХозрасчетныйДвиженияССубконто.Период,
    ....
    0,
    ХозрасчетныйДвиженияССубконто.Сумма
ИЗ
    РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(, , СчетКт В (&СчетДт), , ) КАК ХозрасчетныйДвиженияССубконто
;
22 hhhh
 
25.07.19
10:15
(21) ПланСчетов.Хозрасчетный.РасчетыСПокупателями это вообще не валютный, это рублевый счет, зачем вы его туда пихаете?
23 murattick
 
25.07.19
10:20
(22) Потому что мне нужно чтобы оба счета выводились, сейчас добавил в Значение и ПланСчетов.Хозрасчетный.РасчетыСПокупателямиУЕ как доступное значение. Пробую формирую отчет.
24 murattick
 
25.07.19
10:22
И тоже не вывел. Не пойму, как заставить выводится оба счета сразу
25 hhhh
 
25.07.19
10:25
Вал может, а не уе
26 murattick
 
25.07.19
10:25
(25) Уже пробую
27 murattick
 
25.07.19
10:27
(25) РасчетыСПокупателямиВал сработал!
28 catena
 
25.07.19
10:27
(26)А посмотреть, как называется тот счет, который в проводках разве не вариант?
29 murattick
 
25.07.19
10:30
Всем огромное спасибо! И может кто подскажет где можно почитать различную инфу по азам программирования 1с, чтоб меньше таких тупых вопросов было
30 murattick
 
25.07.19
10:31
(28) я не знаю, где, как и что смотреть. с 1с работаю первый год и нигде и никто не учил всему этому
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн