Пересчет цен при смене контрагента в заказе Нужен совет. Через интернет приходят заказы, в 1С загружаются от имени обезличенного контрагента "Интернет-клиент", у которого договор оплаты предполагает, к примеру предоплату и потому цена равна +20 к закупочной. После того, как обезличенный клиент опознан, в заказе контрагента меняют, меняется и договор и способ оплаты. Но вот цены при этом не меняются. Подскажите, какой самый оптимальный способ пересчитать цены в этом случае? Перебирать все строки и рассчитывать для них цену или есть более быстрый способ вызвать пересчет? |
0-Grigoriy > А нельзя сначала создать документ с нужным контрагентом и уже для этого документа делать загрузку? - Ведь в этом случае, по логике вашего алгоритма, сразу будут писаться нужные цены, без пересчета! :-) |
(1) ты работал когда-нибудь с интернет-магазином? |
[quote=Мэри Сью;43348463] (1) ты работал когда-нибудь с интернет-магазином? [/quote] - Нет. Но я ориентируюсь на ту часть логики, которая содержится в 0-Grigoriy > - цитирую: [b]После того, как обезличенный клиент опознан, в заказе контрагента меняют, меняется и договор и способ оплаты.[/b] - если в процедуре интернет-загрузки присутствует логика распознавания контрагента, очевидным образом все данные по контрагенту становятся доступны для последующей загрузки сразу, без пересчета. Стало быть - нужно построить правильный алгоритм и не маяться пересчетом. Хотя пересчет - тривиальная функция и встроить в логику текущего алгоритма функцию пересчёт() - на раз-два... |
В интернет-магазине регистрируется человек (физ.лицо), оформляет заказ. Заказ падает в базу 1С. Затем с клиентом связывается менеджер, и оказывается, что клиент - представитель юр. лица, и продажу нужно оформлять на юр.лицо. То есть, идентификация контрагента происходит уже после загрузки заказа в базу 1С. |
4-Мэри Сью >- Хм..., что мешает 0-Grigoriy > в документе Заказ хранить 2 столбца цен для физ-лица и юр-лица, или провести пересчет по условию идентификации? - и то, и другое - весьма доступно. |
а он в сабже именно об этом спрашивает. Ты сабж читал вообще? он спрашивает, как сделать в заказе пересчёт цен при изменении контрагента. |
Судя по сабжу, можно сделать два вывода: 1) топикстартер вообще не программист 1С (либо очень начинающий) 2) конфигурация вероятно какая-то нетиповая (ибо в типовой нормально работает пересчёт цен при изменении контрагента или договора) Тут наиболее оптимальное решение - доверить эту работу специалисту, немного заплатив |
думаю, специалист выставит к оплате часик, не больше ну и по деньгам это будет в пределах тысячи на мой взгляд, очень недорогое решение проблемы |
[quote=perpetum;43349177] что мешает в документе Заказ хранить 2 столбца цен для физ-лица и юр-лица[/quote] Я что, для колхозников, плательщиков ЕСХН, будет отдельный столбец в документе Заказ? И думаю ... надо бы добавить по столбцу для иностранных граждан и жителей Заполярья. Это будет покруче чем по системе Чучундера. В той системе для каждой цены заводится отдельная номенклатура. Думаю, такая идея пригодится и для решения текущей задачи. |
2(0) Хотя бы конфигурацию озвучили... |
9-Шухер > - Вот-вот! - Роль столбца может браться из [b]списка типов цен[/b]. Всё сведётся к успешно работающему алгоритму списка цен для конкретного типа контрагента-покупателя. - У меня есть бух-оптовик, использующая типы цен для городов, по которым идет работа с товарными потоками опт\розница - цена учитывает транспортные расходы и обслуживание, и устанавливается фиксированным значением %% наценки. - При выборе контрагента - берется нужный тип цен и совершаются необходимые действия по прайсу и отгрузке. - Следовательно, [b]задачу в (0) можно решать через тип цен продаж (для юр\физ-лица)[/b], расписываемых сразу, при поступлении товара на склад. Тогда в документе Заказ нужна процедура [b]ПриВыбореТипаЦен()[/b] - по которой автоматически произойдёт пересчет цен и сумм табличной части. Во всех типовых настройках баз типы цен существуют - ими нужно только воспользоваться. |
9-Шухер > это у тебя все в одной куче смешано до степени нераспознаваемости. что порождает вымороченные схемы указания одного и того же товара в накладной по разным ценам. У меня одна номенклатура. и много цен. к ней. а про отдельную номенклатуру для каждой цены - это видимо мозг отравленный испрарениями сам знаешь чего у тебя сам выдумал ;-) |
11-perpetum > в (7) все уже расписали. Надо только воспользоваться советом |
Как могут меняться цены после того, как с Покупателем они согласованы? И неважно, "интернет-" он, "телефон-", или сам пришел? И какой мудрец придумал ценовую политику, когда для любезного покупателя, согласившегося на [u]предоплату[/u], цена [u]увеличивается[/u]?! |
14-VZ > Сам несколько раз делал заказы на страницах интернет-магазинов в режиме офф-лайн. - Есть форма, в которой указываешь, что хочешь - [b]без корзины покупок (здесь всё понятно и сразу)[/b], с указанием почты и телефона. Заполнил, отсылаешь свою хотелку в магазин. По-видимому, при этом формируется предзаказ. Через некоторое время менеджер продаж магазина звонит и уже конкретно с ним договариваешься о комплектности, и какой службой будет осуществляться доставка, её варианты. - В этот момент окончательно формируется Заказ, а на почту присылается счет на оплату. Есть магазины, которые торгуют оптом в розницу (одна цена), а есть с ценами, в зависимости от количества товаров и вида юр-физ-лиц (извращенцы). Вот и (0) имеет 2 типа цен, ориентированных на вид юр-физ-лица, потому и имеет проблему... :-) |
15-perpetum > Нет "проблемы" в "1С". Есть проблема в организации, где юзают "1С". Все, что должен делать "интернет-магазин" - это сгрузить свою заявку. Где она может, или не может превратиться в "заявку для исполнения". А вот это решается уже [u]после[/u] выгрузки "интернет-заявки". Специально заточенным юзером. Который и превращает "интернет-заявку" в "Заявку для исполнения" (звонит покупателю для подтверждения, или составляет новый счет, или уточняет адрес, ets.). И никаких здесь "загружается" быть не может: проехали, уже загружено. И топик должен быть именно с этого момента. Не раньше. |
офф Извиняюсь за лирическое отступление, VZ постоянно использует и каждый раз глаз режет. [quote=VZ;43352908]или уточняет адрес, ets.[/quote] Не ets, а etc. Etc. — сокращение латинского выражения et cetĕra, означающего «и другие», «и тому подобное», «и так далее». Ставится в конце неполного перечисления. Употребляется в ряде европейских языков. /etc — директория в операционной системе UNIX |
Правда, забыл указать конфу: "УТ", 10.3.13.2, 2009 год. Сильно кастомизированная. Потому и 7 лет без обновлений. Я начинающий, тоже правда, 1С знаю постольку, поскольку она похожа на другие ЯП и по образу и подобию уже имеющихся обработок, оставшихся с того же 2009 года. И третья "тоже правда": в организации много видов цен - предоплата и несколько видов отсрочек, плюс индивидуальные договора. При загрузке заявки в 1С все падают на контрагента "Покупатель из Интернет-Магазина" с предоплатой. В дальнейшем выясняется, что часть заявок пришла от зарегистрированных контрагентов, поэтому КА меняется в заявке, вот тут и должны смениться цены. И как я понял - мне придется как-то ловить это событие и пересчитывать построчно цены по договору нового контрагента... |
2(18) Ну, если ты совсем начинающий: 1. Открывай форму ФормаДокумента. 2. Открывай свойства поля Контрагент. 3. В событии ПриИзменении клацай кнопку с лупой. Попадёшь в обработчик события. Там ищи вызов нужных тебе процедур. 4. Копипаст. |
Спасибо. |
Текущее время: 05:37. Часовой пояс GMT +3. |