|
10.01.2014, 13:18 | #1 |
Участник
|
черновики (заказы) - могут удаляться. Поэтому данные в заказах хранить нельзя. Фактические данные нужно протаскивать в документы.
вынес обсуждение в отдельную тему
Цитата:
Сообщение от pitersky
Цитата:
насколько я понимаю логику системы, удалять можно строки заказа/журнала. Ибо важны не строки, а проводки. Но заголовок??? Производные документы (отборки, накладные) далеко не всегда содержат данные, которые есть в заголовке заказа. Те же кластеры, к примеру, которые протаскивать в накладные совершенно не нужно. Да и бизнес-логика в удалении именно заголовка заказа мне лично непонятна. * журналы - суть черновики. * черновик может правится пользователем в любой момент ПОКА не разнесен. * черновик может быть удален в любой момент * разноска журнала полностью переносит информацию из черновика в фактические таблицы (в т.ч. в таблицы журнализации) * черновик может дать информацию об ожидаемых операциях (но не факт, что эти ожидания сбудутся), факт нужно собирать по фактически сделанным операциям. заказ - специальный вид журнала. * заказ также черновик * заказ также может удаляться в любой момент * в отличие от журнала, заказ можно разносить несколько раз. * но между разными разносками параметры в заказе могут изменяться (!!!!!!) суть остается то же - заказ (черновик) может дать информацию об ожидаемых операциях (см. галочки автосокращение, автоудаление), факт нужно собирать по фактически сделанным операциям/документам. это в теории. ===================== на практике (особенно очень часто в локализации) журнал трактуется как 1Совский документ, в котором хранятся параметры. К сожалению! В результате возникает куча коллизий и непонятностей. Коллизии прежде всего связаны с тем, что в заказе параметры могут быть разными для разных операций, разнесенных по заказу. Из за того, что параметры могут быть разными - нет никакой логической причины, из-за которой нужно брать параметры операции/документа из заказа! ===================== никогда не обращайтесь к заказу в отчетах. протаскивайте параметры из заказа в фактический документ. и будет вам щастье. Последний раз редактировалось mazzy; 10.01.2014 в 13:30. |
|
|
За это сообщение автора поблагодарили: Vals (1), alex55 (1), Corel (1), Axal (1). |
10.01.2014, 14:27 | #2 |
MCT
|
Может я один такой и всегда строю отчеты либо по проводкам/операциям, либо по документам...
__________________
Axapta book for developer |
|
10.01.2014, 15:06 | #3 |
Участник
|
Из-за м... лени что ли касаемо протаскивания дополнительных параметров из заказов/журналов и последующего отказа от удаления заказов/журналов со временем обычно возникают очень большие проблемы с производительностью. Логика работы системы, кроме прочего, еще подразумевает, что в любой момент времени черновиков (если угодно, work in progress, WIP) в системе не должно быть слишком много. При таком условии формы работы с черновиками работают очень шустро, позволяя пользователям фильтровать/сортировать черновики фактически по любым полям без каких-либо ощутимых тормозов. А если те же заказы не удалять после полного оприходования, то со временем форма заказов начнет открываться со скрипом, фильтрация/сортировка по неиндексированным полям (ибо кто ж запретит) будет нагружать СУБД и подвешивать клиента Аксапты, а "безобидные" executeQuery/findRecord для перепозиционирования на заказе после какой-нить операции могут приводить к тому, что клиент попытается утянуть всю таблицу шапок заказов в память со всеми вытекающими последствиями для себя, СУБД и соседей по терминальному серверу. Так что еще и из соображений производительности WIP в виде черновиков лучше держать под контролем и всё оприходованное/разнесенное удалять.
|
|
|
За это сообщение автора поблагодарили: mazzy (2). |
11.01.2014, 14:29 | #4 |
Талантливый разгвоздяй
|
Полностью согласен с тезизом "Заказы - черновики".
А можете поеделиться опытом, на скольких проектах из общего числа удалось уговорить пользователей на удаление заказов? Не обязательно абсолютные цифры указывать, можно в % от общего числа. Проекты на Axapta 3.0 не в счет из-за ограничений recid... |
|
11.01.2014, 19:50 | #5 |
Участник
|
Я правильно понял основную мысль:
Если потребовался отчет, который использует некий реквизит заказа, то необходимо изменить структуру данных с тем, чтобы "протащить" потребовавшийся реквизит во все разнесенные документы? Если правильно, то, мягко выражаясь, не жирно ли будет? Как с точки зрения трудозатрат на эту модификацию, так и с точки зрения объема базы данных (в байтах). Вот только очень прошу, не надо "песен" про то, что дисковое пространство дешевое, а процессоры быстрые... С точки зрения пользователя именно заказ является исходным документом. А все накладные и фактуры, пораждаемые из него - это всего-лишь некие "печатные формы". Вот Вы бы сами согласились бы хранить только печатные формы без исходников?
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
11.01.2014, 19:58 | #6 |
Участник
|
Цитата:
трудозатраты не слишком высокие, если знать фреймворк FormLetter. Цитата:
Во-вторых, еще раз: * заказ можно разносить частично. * Между частичными разносками параметры заказа можно менять * о каком исходнике вы говорите для "печатной формы", которая была разнесена до изменения параметров? В том то и дело: заказ - черновик. Заказ - не исходный документ. Поэтому данные в заказах хранить нельзя. Фактические данные нужно протаскивать в документы. И уже документы, созданные на основании заказа, являются исходными документами. |
|
11.01.2014, 21:24 | #7 |
Сенбернар
|
Mazzy, вопрос к Вам - снят..
__________________
Best Regards, Roman |
|
12.01.2014, 16:37 | #8 |
Участник
|
Цитата:
Можно. Но я ни разу не видел, чтобы так делали. В смысле, частичную разноску. Обычно заказ разносят целиком. Именно по той причине, что воспринимают заказ вовсе не как "черновик", а как "исходник". Т.е. цельный и завершенный документ. Как следствие, заказы не просто не разносят частично, но еще и дополнительный контроль на это дело навешивают, чтобы случайно частично не разнести! Цитата:
Ну, возьмем простой пример. Купили/продали некий товар. Чтобы создать накладную надо сначала сформировать заказ. Вполне логично делать отдельный заказ на каждую "бумажную накладную". Что в "бумажке", то и в заказе. При таком подходе, естественно, ни о какой частичной разноске не может быть и речи. И частичная разноска воспринимается пользователем как нечто "не естественное". Не совпадают введенные и "бумажные" данные.
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
12.01.2014, 17:09 | #9 |
Administrator
|
Цитата:
Частичная разноска реально востребована. В каком-то смысле я даже наоборот скажу - мне довелось видеть ситуаций / компаний, где не была она востребована - гораздо меньше, нежели ситуаций, когда она востребована. Правда тут есть оговорка - речь идет о заказах на покупку. В случае заказов на продажу - действительно чаще его разносят целиком. Но опять-таки - это вопрос методологии использования. Если заказ клиента воспринимать, как заказ того, чего он хочет купить - то возникают ситуации с доставкой товара клиенту. Хорошо, когда у нас сразу есть все в наличии. А теперь берем ситуацию: Клиент хочет купить у нас чего-то, согласно списку (заказу). Из, допустим 20 позиций - у нас в достаточном количестве есть только 15, еще 2 позиции есть, но в недостаточном количестве, а 3-х просто нет. Мы заинтересованы все же отгрузить клиенту весь заказ и мы знаем, что мы можем отгрузить, но просто на данный момент еще не весь заказ готов. А клиенту нужно купить у нас срочно в первую очередь именно те позиции, которые у нас есть, а остальные он покупает что называется "до кучи". Мы ему с радостью отгрузим то, что ему жизненно необходимо и пообещаем потом "довезти" и довезем. Мы также понимаем, что при нашем отказе отгрузить клиенту товар хотя бы частично - клиент может и сорваться. Конечно эту ситуацию можно решить через отдельные заказы; через копирование заказов и т.д., воспринимая заказ на продажу, как одну накладную Торг-12. Но по факту-то это не так. По факту-то был один заказ, просто он раздробился. И дробя заказы - мы теряем связь с родительским заказом. Ну или надо кодить связку. Существующий функционал частичной отгрузки позволяет видеть в системе реальное количество именно заказов клиентов, а не "преднакладных". А теперь возвращаемся к вопросу анализа данных. Бумажные данные - это накладные. Введенные данные - это данные от звонка / email-а клиента. Эту разницу должны понимать люди, анализирующие эти данные. Если они эту разницу не понимают или им не нужно понимать (например, никогда не может возникнуть такой ситуации в отдельно взятой компании) - то вполне логично, что тут можно опираться и на данные заказа. Их еще будет раздражать промежуточная форма разноски и вообще сам факт ввода данных не в таблице накладных . Просто в любом случае - в системе заложена автоматизация более сложного процесса, который применительно к отдельно взятой компании может быть всегда упрощен
__________________
Возможно сделать все. Вопрос времени |
|
|
За это сообщение автора поблагодарили: olesh (1), EVGL (2). |
15.01.2014, 20:14 | #10 |
Участник
|
Цитата:
Сообщение от sukhanchik
А теперь берем ситуацию: Клиент хочет купить у нас чего-то, согласно списку (заказу). Из, допустим 20 позиций - у нас в достаточном количестве есть только 15, еще 2 позиции есть, но в недостаточном количестве, а 3-х просто нет. Мы заинтересованы все же отгрузить клиенту весь заказ и мы знаем, что мы можем отгрузить, но просто на данный момент еще не весь заказ готов. А клиенту нужно купить у нас срочно в первую очередь именно те позиции, которые у нас есть, а остальные он покупает что называется "до кучи". Мы ему с радостью отгрузим то, что ему жизненно необходимо и пообещаем потом "довезти" и довезем. Мы также понимаем, что при нашем отказе отгрузить клиенту товар хотя бы частично - клиент может и сорваться.
Конечно эту ситуацию можно решить через отдельные заказы; через копирование заказов и т.д., воспринимая заказ на продажу, как одну накладную Торг-12. Но по факту-то это не так. По факту-то был один заказ, просто он раздробился. И дробя заказы - мы теряем связь с родительским заказом. Ну или надо кодить связку. Существующий функционал частичной отгрузки позволяет видеть в системе реальное количество именно заказов клиентов, а не "преднакладных". С моей точки зрения, если часть товара мы можем поставить клиенту, а на другую часть - есть сомнения уже на этапе приема заявки, то, опять же, с моей точки зрения, по факту, это как раз будет 2 отдельных заказа, а вовсе не один. Каждый из них будет по особому комплектоваться. Т.е. здесь как раз логично делать некий "предзаказ" (Журнал), а потом его разбивать на 2 "окончательных" заказа. Вопрос даже не организации работы, а точки зрения. Угу. Разделение заказов на "предварительные" (журнал) и окончательные (заказ) снимает эту проблему и еще кучу сопутствующих.
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
12.01.2014, 17:57 | #11 |
Administrator
|
Цитата:
Сообщение от Владимир Максимов
Можно. Но я ни разу не видел, чтобы так делали. В смысле, частичную разноску. Обычно заказ разносят целиком. Именно по той причине, что воспринимают заказ вовсе не как "черновик", а как "исходник". Т.е. цельный и завершенный документ.
Как следствие, заказы не просто не разносят частично, но еще и дополнительный контроль на это дело навешивают, чтобы случайно частично не разнести!
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
15.01.2014, 20:29 | #12 |
Участник
|
Цитата:
И совершенно не вызывает удивления тот факт, что мультиварку начинают использовать как обычную кастрюлю... Ну, в лучшем случае, как скороварку...
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
11.01.2014, 21:23 | #13 |
Сенбернар
|
Цитата:
Сообщение от Владимир Максимов
Я правильно понял основную мысль:
Если потребовался отчет, который использует некий реквизит заказа, то необходимо изменить структуру данных с тем, чтобы "протащить" потребовавшийся реквизит во все разнесенные документы? Если правильно, то, мягко выражаясь, не жирно ли будет? Как с точки зрения трудозатрат на эту модификацию, так и с точки зрения объема базы данных (в байтах). Вот только очень прошу, не надо "песен" про то, что дисковое пространство дешевое, а процессоры быстрые... С точки зрения пользователя именно заказ является исходным документом. А все накладные и фактуры, пораждаемые из него - это всего-лишь некие "печатные формы". Вот Вы бы сами согласились бы хранить только печатные формы без исходников? == - да , Заказ есть WNP. Work In Progress.. - да, Заказ, неразнесенный, есть черновик, и может быть удален в любое время.. Mazzy, вопрос : а кто - на реальном клиенте -будед заниматься удалением заказов? Роль? Просто интересно, не видел ниразу такого (при этом я всеми руками за то , что так надо).. да.. а Заказ - частично отгружен, например? - с точки зрения пользователя - пользователь - отдыхает.. совсем.. либо есть кто-то (роль??) , кто должен ему объяснить, что он, пользователь, не прав.. а лев.. и даже где-то слон ))
__________________
Best Regards, Roman Последний раз редактировалось RVS; 11.01.2014 в 21:40. |
|
12.01.2014, 01:06 | #14 |
Талантливый разгвоздяй
|
|
|
12.01.2014, 10:27 | #15 |
Участник
|
заказ типа "контракт" - это такой же черновик. только исполняется этот черновик другими заказами, которые в свою очередь исполняются фактическими документами. (пока не поглотит все вязкое трение (С) )
гораздо интереснее, как трактовать заказы с типом подписка. Цитата:
сколько раз локализация была антипаттерном. и в этом случае тоже является. Цитата:
копирование с минусом делается и на основании накладной. конкретная реализация алгоритма? так см. рассуждения о локализации? или еще чего? Цитата:
договор - русский? который rcontract? ой, блин, это просто справочник "как в 1С". заявка на покупку - типичный журнал/черновик, который исполняется фактическими документами. Цитата:
Цитата:
Как уже сказал Kabardian - есть процедура очистки, которую можно засунуть в пакетное задание и выполнять периодически на автомате. А также можно выделить ответственного, который будет запускать. Но самое интересное и правильное - в параметрах клиентов и поставщиков есть галочки "Автоудаление заказов" и "автосокращение заказов". (все еще под рукой нет аксапты, чтобы сказать точное название) Можно и нужно взводить эти галочки. тогда Аксапта сама при разноске будет удалять полностью разнесенные строчки и сокращать на разнесенное количество. В заказах останется только то, что осталось выполнить. |
|
12.01.2014, 11:48 | #16 |
Участник
|
Цитата:
Аналогично с заказами. Если мы хотим строить отчет об уровне сервиса - план/факт выполнения заявок клиентов или наших заявок у поставщика - нам нужно сравнить сколько заказали и сколько получили. Да, можно разносить по каждому заказу документ "Заказ" и сравнивать потом с ним. Но это лишнее движение при каждом изменении заказа и зачастую его роль и выполняет сам Заказ. Цитата:
Цитата:
Цитата:
Цитата:
Тут не соглашусь. Обычно нужная история - кто и зачем что-то заказал. Если эту историю чистить, то половина задачи будет не решена. Централизация закупок обычно и требуется для наведения порядка и контроля - кто, что и зачем.
__________________
Ivanhoe as is.. Последний раз редактировалось Ivanhoe; 12.01.2014 в 11:52. |
|
|
За это сообщение автора поблагодарили: EVGL (5). |
12.01.2014, 16:05 | #17 |
Сенбернар
|
Цитата:
== Мимо, работаем ))
__________________
Best Regards, Roman |
|
11.01.2014, 21:30 | #18 |
Сенбернар
|
Цитата:
__Печатные__ формы - обычно регламентированы.. законодательством (как минимум), Вашими отношенияма с клиентом (как максимум) Nothing anymore )) Если есть идея, что __вот ЭТО__ - должно напечататься и __после__ удаления "Заказа" - 20 минут на такую доработку.. только скажите, __ что именно __ Вас интересует..
__________________
Best Regards, Roman Последний раз редактировалось mazzy; 12.01.2014 в 10:06. |
|
12.01.2014, 16:30 | #19 |
Модератор
|
Нет ну всему же должен быть предел, в том числе и клиентоориентированности Пользователь хочет "как проще", проблемы аудита, целостности и непротиворечивости данных его не волнуют. Он сам поправит Ваш "исходный документ" (заказ) "как должно быть" а потом Вас же будет гонять "система №;%" и "печатные формы не сходятся". А Вы еще будете молиться чтобы на Ваши "исходные документы" в течение года-двух до окончания всевозможных аудитов никто не дышал. Так что - нет, не жирно, а "протаскивать", только так
__________________
-ТСЯ или -ТЬСЯ ? |
|
12.01.2014, 16:39 | #20 |
Участник
|
Цитата:
Сообщение от Vadik
Нет ну всему же должен быть предел, в том числе и клиентоориентированности Пользователь хочет "как проще", проблемы аудита, целостности и непротиворечивости данных его не волнуют. Он сам поправит Ваш "исходный документ" (заказ) "как должно быть" а потом Вас же будет гонять "система №;%" и "печатные формы не сходятся". А Вы еще будете молиться чтобы на Ваши "исходные документы" в течение года-двух до окончания всевозможных аудитов никто не дышал. Так что - нет, не жирно, а "протаскивать", только так
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|