Перейти к содержанию
Форум поддержки пользователей VamShop

доставка в счёт-фактуре


Рекомендуемые сообщения

Добрый день.

Такой вопросик.

Если зайти в админка - заказы, выбрать заказ и нажать на кнопочку "счёт" открывается страничка - версия для печати - счёт фактура.

в ней есть графа, в которой пишется стоимость доставки.

Когда клиент выбирает доставку в другие города, в счете пишется: "Доставка в другие города (Служба доставки". Судя по всему должно быть ещё написано какая именно служба доставки (у меня их несколько).

Я посмотрел в исходном коде (например admin/print_order.php) как эта информация попадает в шаблон templates/шаблон/admin/print_order.html и выяснилось, что данные берутся из таблицы "orders_total". Между прочим, тип поля title varchar(255).

например запрос: "SELECT * FROM my_db.orders_total WHERE `orders_id` = '1239'"

возвращает мне 3 строки. в одной из них в поле "title" указан вариант доставки и там в поле написано точно так же как и на странице "Доставка в другие города (Служба доставки".

Логично предположить, что при Insert'e данных в БД этот string и записывается. Т.е. Перед инсертом происходит обработка данных и обрезаются данные для поля title. скорее всего по длине. Кстати, откуда берется этот стринг? Я не могу найти точно такой же. В админке в модуле доставки написано "Служба доставки "Новая почта"", в файле lang/russian/modules/shipping/novaposhta.php, например, в константах указано "Служба доставки <b>Новая почта</b>".

Подскажите в каком файле найти эту проверочку, куда копать? (Хочу убрать это самое обрезание) :)

Ссылка на сообщение
Поделиться на другие сайты

Не совсем конечно понял, но названия модулей доставки обычно сидят в /lang/russian/modules/shipping/

Оттуда обычно всё и берётся.

Ссылка на сообщение
Поделиться на другие сайты

перефразирую и напишу короче:

название модуля у меня одно, а в счет-фактуре другое. и обрезанное. вопрос: где это обрезание происходит? (в таблице orders_total уже записано обрезано)

p.s.: а что не понятно-то? :)

update:

не знаю где этот инсерт в таблицу orders_total происходит), но таки данные берутся из lang/russian/modules/shipping/....php

правда как-то по-хитрому. строка создается из кусочков.

У меня была проблема с данными в этой константе MODULE_SHIPPING_NOVAPOSHTA_TEXT_WAY, там нельзя использовать двойные кавычки.

если не сложно всё равно подскажите какой файл записывает данные в orders_total

Изменено пользователем MaZa
Ссылка на сообщение
Поделиться на другие сайты

опа, нашёл) интересно добавляется в базу инфа, есть свой конструктор запроса..

спасибки :)

Ссылка на сообщение
Поделиться на другие сайты
  • 2 months later...

а теперь другой вопрос, как эту графу из счёт-фактуры убрать? :-)

я про стоимость доставки.

так "с наскоку" разобраться не удалось :-(

Ссылка на сообщение
Поделиться на другие сайты

Наверное нужно просто в sql запрос добавить условие, что б не доставался ot_shipping модуль, т.е. в /admin/print_packingslip.php, видимо, менятьЖ



// get order_total data
$oder_total_query=vam_db_query("SELECT
title,
text,
class,
value,
sort_order
FROM ".TABLE_ORDERS_TOTAL."
WHERE orders_id='".$_GET['oID']."'
ORDER BY sort_order ASC");
[/code] на что-то типа:
[code]

// get order_total data
$oder_total_query=vam_db_query("SELECT
title,
text,
class,
value,
sort_order
FROM ".TABLE_ORDERS_TOTAL."
WHERE orders_id='".$_GET['oID']."'
and class <> 'ot_shipping'
ORDER BY sort_order ASC");

Ссылка на сообщение
Поделиться на другие сайты

спасибо большое! только я поменял запрос не в файле /admin/print_packingslip.php, а в /admin/print_order.php

а подскажите, пожалуйста, как убрать стоимость доставки в счёт-фактуре в клиентской части сайта? (/schet.php?oID=974)

в файле schet.php нет такого запроса :(

Ссылка на сообщение
Поделиться на другие сайты

Аналогично.

Только править метод getTotalData в /includes/classes/order.php

Но тут аккуратней, класс order используется не только в счёте.

Смотрите что б это боком не вылезло где.

Можно просто именно для счёт создать новый метод getTotalDataNew к примеру, полность аналогичный код getTotalData, за исключением sql запроса.

Так даже правильней будет.

Ссылка на сообщение
Поделиться на другие сайты

жесть.. задачка по-сложнее. надо бы переименовать в счёт-фактуре фразы: "Стоимость товара:" и "Всего:".

Я так понимаю эти данные берутся из базы, из таблицы orders_total, но не могу найти откуда берется этот текст. хотел бы тоже сделать клон констант с этими фразами и задействовать их только в счёт-фактуре. (магазин русскоязычный, но документы должны быть на украинском языке). Хелпъ плиз!

update:

откопал эти константы..

описываются они в файлах:

/lang/russian/modules/order_total/ot_total.php

/lang/russian/modules/order_total/ot_subtotal.php

используются в файлах:

/includes/modules/order_total/ot_total.php

/includes/modules/order_total/ot_subtotal.php

вот таким образом:

$this->title = MODULE_ORDER_TOTAL_SUBTOTAL_TITLE;

$this->title = MODULE_ORDER_TOTAL_TOTAL_TITLE

данные из этих констант записываются в БД в таблицу orders_total, так что эти фразы в счетах оформленных заказов будут на том языке на каком было записано в константах в момент оформления заказа. К слову, тут мультиязычность на сколько я понимаю не предусмотрена.

осталось разобраться как аналогичным способом изменить сумму прописью. хелп плиз! :)

Изменено пользователем MaZa
Ссылка на сообщение
Поделиться на другие сайты

Тексты для суммы прописью в /lang/russsian/russian.php

и /lang/russian/admin/russian.php

Ищите по "рублей" или по "рубля"

Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...