|   |   | 
| 
 | 1С: Предприятие 8.3.20 Создание взаимозачетов в отчете | ☑ | ||
|---|---|---|---|---|
| 0
    
        AndMix 11.02.23✎ 12:40 | 
        Здравствуйте, такая ситуация. Требуется сделать взаимозачет должников и кредиторов с их суммами долга. Всё это в внешнем отчете. Подскажите пожалуйста, как это сделать. Заранее благодарю.     | |||
| 1
    
        AndMix 11.02.23✎ 12:44 | 
        Вот фотография самого задания - https://imgur.com/a/M9NQXU1     | |||
| 2
    
        vis_tmp 11.02.23✎ 15:09 | 
        (0)Может, всё-таки, во внешней обработке?     | |||
| 3
    
        Мимохожий Однако 11.02.23✎ 15:25 | 
        (0) Надо открыть конфигуратор. 
 Далее Файл- Новый - внешний отчет и т.д. | |||
| 4
    
        AndMix 12.02.23✎ 00:44 | 
        (3) Это понятное дело, я имею ввиду, как сделать такой взаимозачет в отчете.     | |||
| 5
    
        AndMix 12.02.23✎ 00:44 | 
        (2) Не-а, задание в внешнем отчете     | |||
| 6
    
        Сергиус 12.02.23✎ 01:02 | 
        (0)Конфу самому что ли писать под это всё?     | |||
| 7
    
        AndMix 12.02.23✎ 04:18 | 
        (6) Нет, просто объяснить, как это можно сделать, не обязательно в подробностях, коротко и понятно     | |||
| 8
    
        Мимохожий Однако 12.02.23✎ 06:36 | 
        ОФФ: Беспредельная наивность     | |||
| 9
    
        Aleksey 12.02.23✎ 12:49 | 
        А кто нибудь понял как из таблицы 1 получить таблицу 2?     | |||
| 10
    
        Aleksey 12.02.23✎ 12:51 | 
        Ну вот 1 строка 
 Должник 1 кредитор 2 500 рублей Но встречных долгов нет, а в итоговой таблице сумма долга 100 рублей Либо это не взаимные требования а 3-сторонний зачет, либо я чего то не понимаю | |||
| 11
    
        Сергиус 12.02.23✎ 13:25 | 
        (10)Тоже интересно, как я понял ключевая фраза там "При этом надо постараться, найти такой вариант, чтобы сумма долгов всех участников была бы минимальной"     | |||
| 12
    
        CepeLLlka 12.02.23✎ 13:27 | 
        (6)В условии написано что нужно использовать каркасную конфигурацию.     | |||
| 13
    
        Сергиус 12.02.23✎ 13:27 | 
        +(11)[Либо это не взаимные требования а 3-сторонний зачет] Именно так и есть. Просто в теории, этих связей может быть сколько угодно, а по какому принципу их строить, с точки зрения минимализации долгов всех участников, и есть главный вопрос)     | |||
| 14
    
        Сергиус 12.02.23✎ 13:28 | 
        (12)это да, но думаю там ничего особенного не увидим.     | |||
| 15
    
        Aleksey 12.02.23✎ 13:57 | 
        (13) тогда Сашу нужно гнать санными тряпками из профессии, ибо в реальной жизни никто так не упрощает взаиморасчеты, тем более это по определению не зачет взаимных требований     | |||
| 16
    
        bolder 12.02.23✎ 14:07 | 
        (0) Интересная задача,действительно олимпиадного уровня.Хотя они там переборщили с условиями - в каркасной все таки понадобится создать документ и требуемый отчёт.     | |||
| 17
    
        bolder 12.02.23✎ 14:11 | 
        (16) Вот на решении подобных задач и стоит привлекать новичков в профессию.     | |||
| 18
    
        Aleksey 12.02.23✎ 14:21 | 
        (16) для кого? Для олимпиады по математики? Для новичков 1с-ников каков в ней практичный смысл? Что именно при решении этой задачи можно использовать в реальной жизни?     | |||
| 19
    
        AndMix 12.02.23✎ 14:24 | 
        (16) В каркасной присутствует документ НашиДолги и справочник с должниками     | |||
| 20
    
        АгентБезопасной Нацио 12.02.23✎ 14:35 | 
        (18) саму задачу и можно использовать в реальной жизни. правда, не новичку. В холдинговых структурах это обычная потребность. особенно в "мутных". Правда, там еще бывают усложнения типа разных валют, или срочных договоров.
 (13) критерий простой - когда "больше нельзя ничего перезачесть". (0) Вообще-то, это олимпиадная задача. Ты хочешь выиграть олимпиаду за чужой счет? | |||
| 21
    
        АгентБезопасной Нацио 12.02.23✎ 14:41 | 
        Прикольно попробовать сделать это запросом. задачка для ildarovich'а     | |||
| 22
    
        Обработка 12.02.23✎ 14:47 | 
        Заголовок "1С: Предприятие 8.3.20" Можно дальше не читать.     | |||
| 23
    
        Злопчинский 12.02.23✎ 14:50 | 
        По идее - главное в этой задаче как раз алгоритм построения цепочек погашения. и причем как всегда - запросом!
 Причем там есть существенная оговорака - итог взаиморасчетов чтобы остался прежним по каждому из участников. ибо без этой оговорки итог выглядел бы так, (а не так как в примере) 3-1 100 4-1 100 | |||
| 24
    
        АгентБезопасной Нацио 12.02.23✎ 14:57 | 
        (23) это легко. сложнее определить сумму, если цепочек зачетов несколько.     | |||
| 25
    
        АгентБезопасной Нацио 12.02.23✎ 14:58 | 
        +(24) но можно. вечером попрробую, если не лень будет     | |||
| 26
    
        Злопчинский 12.02.23✎ 15:02 | 
        (24) хз.. я вот навскидку не накидаю так чтобы по каждому сохранился баланс. надо думать.. ;-)     | |||
| 27
    
        RomanYS 12.02.23✎ 15:06 | 
        (23) нет никаких цепочек. Сворачиваешь всё долги по каждому, потом раскидываешь дебет на кредит как угодно, например по ФИФО     | |||
| 28
    
        RomanYS 12.02.23✎ 15:08 | 
        (21) если умеешь нарастающий итог считать и ФИФО в запросе, то никакой Ильдарович не нужен))     | |||
| 29
    
        RomanYS 12.02.23✎ 15:10 | 
        +(27) это кстати даже из примера видно: в результате возникли долги, которых во входной таблице не было     | |||
| 30
    
        AndMix 12.02.23✎ 15:18 | 
        (20) Нет конечно, хочется лишь научиться решать такие задачи, ведь в данный момент совершенно не понимаю как это можно сделать. Направление ясно, через запрос, но дальнейшее в тайне так сказать.     | |||
| 31
    
        Aleksey 12.02.23✎ 15:24 | 
        (30) перебор наше всё     | |||
| 32
    
        AndMix 12.02.23✎ 15:27 | 
        (31) Уже пробовал, не помогло)     | |||
| 33
    
        RomanYS 12.02.23✎ 15:33 | 
        (32) 
 1. Посчитать по каждому долг/дебет перед банком/общаком | |||
| 34
    
        Сергиус 12.02.23✎ 15:57 | 
        (28)Интересно посмотреть, как ты её через нарастающий итог будешь делать)     | |||
| 35
    
        RomanYS 12.02.23✎ 16:08 | 
        (34) Для фифо в запросе(того способа который я знаю) нарастающию итог нужен     | |||
| 36
    
        Сергиус 12.02.23✎ 16:14 | 
        (35)С чего ты взял, что там фифо? Судя по итоговой таблице, там главная задача - минимизировать долги ВСЕХ участников. ФИФО она тебе по максимуму спишет для первых, а для оставшихся шиш может быть..     | |||
| 37
    
        RomanYS 12.02.23✎ 16:17 | 
        Я не взял, это одни из способов распределения дебета на кредит. Можно пропорционально просто всё на всё раскидать, проще но таблица будет большая.     | |||
| 38
    
        RomanYS 12.02.23✎ 16:18 | 
        (36) >>а для оставшихся шиш может быть..
 Не может, все долги внутренние, т.е. общая сумма 0. Хватит на всех. | |||
| 39
    
        mistеr 12.02.23✎ 16:35 | 
        (27) Тут нужно уточнить условия, можно ли выходить за границы транзитивных цепочек. В реальной жизни это нежелательно.     | |||
| 40
    
        RomanYS 12.02.23✎ 16:36 | 
        (39) что это? (29) видел?     | |||
| 41
    
        mistеr 12.02.23✎ 16:40 | 
        (40)  Могут ли возникнуть отношения, которых не было даже через других участников.     | |||
| 42
    
        RomanYS 12.02.23✎ 16:51 | 
        (41) судя по примеру в задаче это не запрещено.     | |||
| 43
    
        mistеr 12.02.23✎ 17:03 | 
        (42) В примере как раз нет такого.
 Берешь две независимые таблицы, объединяешь, вот и пример. | |||
| 44
    
        RomanYS 12.02.23✎ 17:08 | 
        (43) Теперь понял, что ты имел в виду под "даже через других участников". Это совсем другая задача на поиск "кластеров"     | |||
| 45
    
        АгентБезопасной Нацио 12.02.23✎ 17:43 | 
        (26) чтоб сохранился баланс - это просто. вспомни, например, 2-3 курс, схемотехнику, идеальные источники напряжения... 
 (28) нарастающий тут совершенно ни при чем. задача на другое. (27) есть цепочки (которые могут быть замкнутыми, например). И "долга перед общаком/банком" нет, ибо других контрагентов кроме перечисленных - нет. Ну и нет явно указанного условия, что кто-то может (или не может) выступить сторонним держателем долгов. Ибо если есть - тогда задача вообще решается более чем просто. (31) а ты не офигеешь при паре десятков предприятий? (42) но и не разрешено. (44) а никаких кластеров не нужно. | |||
| 46
    
        АгентБезопасной Нацио 12.02.23✎ 17:45 | 
        (30) "через запрос" - это не направление. Это всего лишь способ представления решения. Но не обязательно он будет самым лучшим, или даже вообще хорошим.     | |||
| 47
    
        RomanYS 12.02.23✎ 22:33 | 
        (37) тупой вариант "всё на все". Из очевидных минусов - суммы могут быть не кратны копейкам
 
 | |||
| 48
    
        Злопчинский 12.02.23✎ 22:43 | 
        (47) все на все - результат будет другим...?
 баланс долга по каждому клиенту должнен остаться без изменений. | |||
| 49
    
        Злопчинский 12.02.23✎ 22:44 | 
        а так задачка для размять мозги - вполне ничего считаю. как раз можно на собеседованиях на проверку давать ;-)     | |||
| 50
    
        RomanYS 12.02.23✎ 22:48 | 
        (48) баланс конечно сохранится. В данном примере результат будет такой
 Должник Кредитор Сумма 01 02 112,5 01 04 37,5 03 02 37,5 03 04 12,5 | |||
| 51
    
        Злопчинский 12.02.23✎ 23:18 | 
        (50) Плохой результат. В исходном примере - результат решения задачи лучше. При ручной решалке получил тоже такой результат как в задании.
 . Меня напрягли сразу копейки. | |||
| 52
    
        RomanYS 12.02.23✎ 23:28 | 
        это распределение в лоб, могли и например 1/7 копейки.
 Чтобы подобие фифо изобразить запросом, большую простыню накидать надо) | |||
| 53
    
        Сергиус 12.02.23✎ 23:53 | 
        (50)Ваш вариант интересен, но решение немного не таким кажется..в задании более красивое)     | |||
| 54
    
        Злопчинский 13.02.23✎ 08:00 | 
        (52) вопрос не втом чтобы в лоб, а в том чтобы было минимально колво обязателств (по числу обязательств), грубо говоря - возиться с тремя проще, чем с четырьмя...     | |||
| 55
    
        RomanYS 13.02.23✎ 08:31 | 
        (53) Ничего интересного, просто решение) 
 (54) ФИФО годно решит такую задачу для коммерческих целей. А если такое условие жестко поставить (найти минимальное количество записей), то задача становится олимпиадной и без перебора имхо не обойтись | |||
| 56
    
        Мимохожий Однако 13.02.23✎ 10:47 | 
        Лицо 01    Лицо 02    150
 Лицо 03 Лицо 04 50 | |||
| 57
    
        RomanYS 13.02.23✎ 11:12 | 
        (56) ага, "ФИФО" при сортировке по суммам вернуло бы именно такой результат. Но это очень удачный пример, в общем случае возврат самого оптимального не гарантирован.     | |||
| 58
    
        mistеr 13.02.23✎ 11:37 | 
        (0) Это задача со спеца?
 Конфу скиньте кто-нибудь, если есть. | |||
| 59
    
        Мимохожий Однако 13.02.23✎ 13:05 | 
        (57) Фокус в том, что мой ответ не сошёлся с заданием     | |||
| 60
    
        Мимохожий Однако 13.02.23✎ 13:11 | ||||
| 61
    
        Адинэснег 13.02.23✎ 13:12 | 
        (0) ну чо, взяли сеньором? или не проверяли еще?     | |||
| 62
    
        Доминошник 13.02.23✎ 13:33 | 
        (1) Просто ради интереса.
 А почему в предложенном "конечном варианте" 3 строки 01 отдаёт 02 сумму 100 01 отдаёт 04 сумму 50 03 отдаёт 02 сумму = 50 а не 2 01 отдаёт 02 сумму 150 03 отдаёт 04 сумму 50 | |||
| 63
    
        DrZombi гуру 13.02.23✎ 13:45 | 
        (0) Каркасную конфигурацию вам выдали, или вы так же все должны в ручном режиме выполнить? :)     | |||
| 64
    
        DrZombi гуру 13.02.23✎ 13:50 | 
        (1) Сумма долга в первой таблице непонятно что показывает :)
 Долг к чему?... Первый дал в долг 4-тому, четвёртый дал долг 2-му... ...А вы понимаете что суммировать обороты Дебита и кредита в один итог, неактуально? :)... ..Вторая таблица такая же :)... | |||
| 65
    
        mistеr 13.02.23✎ 13:56 | 
        (60) Спасибо     | |||
| 66
    
        RomanYS 13.02.23✎ 15:52 | 
        (59) Сошёлся. Общая сумма 200, как и в (50) например, а распределение может быть любое.     | |||
| 67
    
        RomanYS 13.02.23✎ 15:54 | 
        >> А вы понимаете что суммировать обороты Дебита и кредита в один итог, неактуально? 
 С чего вдруг, просуммировав обороты получишь сальдо. Только в данном условии уже даны сальдо. | |||
| 68
    
        Eiffil123 13.02.23✎ 17:37 | 
        (62) я не думаю, что задание подразумевает трехсторонний зачет. скорее только между двумя сторонами     | |||
| 69
    
        Eiffil123 13.02.23✎ 17:38 | 
        а, понял, это же олимпиадная задача. значит там всё что угодно может быть     | |||
| 70
    
        Aleksey 13.02.23✎ 18:13 | 
        (62) ИМХО по правилам сума долга должна быть минимальная. У тебя не минимальная     | |||
| 71
    
        RomanYS 13.02.23✎ 18:20 | 
        (70) минимальная. Везде 200.     | |||
| 72
    
        RomanYS 13.02.23✎ 18:22 | 
        (62) По условию нет цели найти оптимальное решение по количеству записей, только по общей сумме. Поэтому формально и (50) и (56) правильные ответы     | |||
| 73
    
        polosov 13.02.23✎ 18:24 | 
        А с чего благородные доны решили, что задачу надо решить запросом?     | |||
| 74
    
        RomanYS 13.02.23✎ 18:28 | 
        (73) Это предположение ТС. Если это экзамен на спеца, то за "ФИФО" запросом можно и огрести имхо.     | |||
| 75
    
        AndMix 14.02.23✎ 07:55 | 
        (61) Не, тут дело в том, что задание от учебного заведения :)     | |||
| 76
    
        AndMix 14.02.23✎ 07:56 | 
        (63) Выдали, там справочник и документ с данными, как на первом рисунке.     | |||
| 77
    
        AndMix 14.02.23✎ 07:58 | 
        (75) При том считается, что уровня Джуна     | |||
| 78
    
        Мимохожий Однако 14.02.23✎ 08:17 | 
        Насколько я понял, дело не в программировании, а в понимании логики нахождения ответа. Если понятна логика, то программирование действительно на уровне джуна     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |