Ответить Новая тема Новый опрос 
 Лишние товары в PDF счете
asderkdw
Новичок
Сообщений: 10
Регистрация: 17-04-2012


22-07-2012 01:24
Здравствуйте!
Прошу помощи, сломал голову...
Заказ, оформление и прочее проходят нормально.
Но при просмотре PDF счета в личном кабинете откуда то берутся лишние товары, которых не было в заказе. И тоже самое при просмотре заказа в админке.
Хотя на почту приходит правильный заказ без лишних товаров. Прилагаю скрин.
Версия PrestaShop™ 1.4.4.0
Нонсенс в том, что таких товаров уже нет на сайте.
Новые товары загружались через импорт CSV, не знаю имеет ли это отношение к делу.
Для эксперимента (с дуру) пробовал регить разных покупателей и очищать куки и в разных браузерах. Все равно подкидывает в PDF разные товары, в том числе и не существующие в каталоге.

Помогите советом советом плз. Хотя бы тыкните в каком направлении копать.
Спасибо.


Изображения:
pdf_error.jpg - Размер файла81.11KB, Скачиваний: 590 (Нажмите для увеличения)
 
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
asderkdw
Новичок
Сообщений: 10
Регистрация: 17-04-2012


22-07-2012 12:08
Как оказалось, такая тема уже поднималась - http://prestadev.ru/forum/tema-3862-0.html, но рецепта решения так и не было. Ну хоть на мысль натолкнуло.
Я тоже решил проблему не лучшим образом, но .... хоть и через задницу, как и все в этом кривом движке, все же победил. :focus:
Суть в том, что хотя в Список заказов вели кнопку Удалить, но сделали это криво.
За заказы и выписку счетов отвечают 2 таблицы БД ps_order и ps_order_detail. Так вот, как и каждый нормальный разработчик, при отладке мы делаем ряд тестовых заказов в магазине и меняем их статусы и т.п.
Когда приходит время сдачи магазина заказчику и старт проекта, есно мы удаляем тестовые заказы и наивно думаем, что терь все чисто и красиво.
Ага... ща... При удалении заказов из админки очищается только таблица ps_order, вернее тупо удаляются соответствующие записи из нее, при этом значение инкрементных полей id_order никто и не думал пересчитывать. Ясен пень - геморрой.

Теперь откуда же берутся лишние товары? а дело в том, что существует еще одна табличка ps_order_detail в которой хранятся данные о сделанных заказах, вот именно она и причина мусора. Когда мы тестим заказы и удаляем их в этой табличке накапливаются записи и в поле id_order получаются дубляжи номеров заказов с их данными.
Теперь при формировании счета в него вставляются все значения, в том числе и ранее удаленные из таблицы id_order.

Лечение - очистить ручками обе таблицы ps_order и ps_order_detail - тупо сносим все записи. Таким образом от мусора избавимся.
Ясен пень это не решение проблемы - ведь о кнопке Удалить товар можно забыть, иначе в процессе пользования магазином наступим на те же грабли.
Кроме того, Новый заказ получит номер и счет следующий по счету, после удаленных, т.к. не сброшены значения инкрементных полей.
Чтобы нумерация Заказов и Счетов началась с 1 нужно установить в 1 значение инкремента полей: в табл. ps_order поле id_order.
Чтобы было понятнее прилагаю скрин…
Если важно чтобы и Счета начинались с 1, тогда туже операцию проводим с таблицей ps_order_detail. В ней редактируем инкремент поля id_order_detail.
После этих манипуляций глюки с мусором и нумерацией уходят, теперь все девственно чисто и начинаем новую жизнь с нуля.
Но это еще не все :box:
Нужно еще почистить таблицу отвечающую за историю статусов заказов, иначе они потянутся из тестовых заказов в новые.
Для этотого все тоже самое – (очистку таблицы и сброс инкремента) проводим для таблицы ps_order_history и поля id_order_history

Друзья, забудьте о кнопке Удалить Заказ, и не показывайте ее никому, заказчику в особенности – потом греха не оберетесь.
А еще лучше забыть об этом двиге, по крайней мере до того момента как выйдет нормальная версия. За 3 месяца отладки магазина пришлось перекопать 90% кода, постоянно вылазят тараканы изо всех щелей. А уж что нить поправить или ввести свои дополнения – начинающему программеру не под силу.
Цитата из фильма – "Будь проклят тот день, когда я сел за баранку этого пылесоса!» (читать – ...когда я поставил Престу на хост)

:crazy:


Сообщение отредактировано asderkdw 22-07-2012 07:16 ...


Изображения:
Untitled-1.jpg - Размер файла135.63KB, Скачиваний: 604 (Нажмите для увеличения)
 
Репутация: -3 | Поставил: Алекс
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
asderkdw
Новичок
Сообщений: 10
Регистрация: 17-04-2012


22-07-2012 12:42
Ну и чтобы не наступать на эти грабли уберите дебильное решение рекомендованное по введение кнопки Удалить заказ из админки.
Кто-то не очень умный рекомендовал сделать такие манипуляции:
В /admin/tabs/AdminOrders.php После $this->colorOnBackground = true;
Добавить $this->delete = true;

Вот теперь найдите этот файл и удалите там эту строку $this->delete = true;
если она там у вас есть канеш.
Заказы удалять нельзя - их можно только отменять!!!
 
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
YellowDuck


Профессионал
Сообщений: 1054
Откуда: Ярославль
Регистрация: 29-09-2009


23-07-2012 12:59
Цитата:( asderkdw @ 22-07-2012 08:08 Смотреть сообщение )
За 3 месяца отладки магазина пришлось перекопать 90% кода, постоянно вылазят  тараканы изо всех щелей.

Ржака :) Что ж просто свой двиг не написали, без тараканов...
 



Интернет-магазин товаров для детей yellowduck.ru
Хороший хостинг для Prestashop и не только one-hosting.ru
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
asderkdw
Новичок
Сообщений: 10
Регистрация: 17-04-2012


23-07-2012 21:48
Хм... Нет, свой двиг я дейсно не писал, не было необходимости, ну пока...
Да и зачем? Есть грядка двигов под разные нужды, зачем велик изобретать?
Престу поставил только из-за кричащей рекламы, типа файно! и поюзать хотелось для общего развития.
Ну понимаю, тараканы есть всегда, но не столько же! За что не возьмись оно нормально не работает, все через :focus:
Ну може 1.5 будет по лучше. Но пока запускать этот двиг для коммерческого использования стремно, себе дороже.
Ну слишком много проблем, хотя жалко потерянного времени. Все же уже много раскопано и знаешь как править.
А прикручивать новые модули, так это ваще миф трудоголика. Не, ну можно, но тогда надо до дна ее раскапывать. А смысл? Все равно скоро новая версия выйдет и все сначала начинай, или почти все.
Лан, изотерику в сад, а престу пока втопку :wink2:
 
Репутация: -3 | Поставил: Алекс
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
asderkdw
Новичок
Сообщений: 10
Регистрация: 17-04-2012


23-07-2012 22:06
:) О, уже и в репу -3 Та до лампы! Хоть ваще снесите этот пост :) Пусть молодежь самостоятельно тренирует прямую мозгу :))))
 
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
ors
Профессионал
Сообщений: 1885
Регистрация: 09-11-2009


24-07-2012 13:05
Цитата:( asderkdw @ 23-07-2012 22:48 Смотреть сообщение )
Ну понимаю, тараканы есть всегда, но не столько же! За что не возьмись оно нормально не работает, все через  :focus:

Нашли баги - пишите на багтрэкер.
Только я думаю, что багов этих вы сами понаделали. Если в стандартной версии нет кнопки удалить заказ, то на это есть причина. Заказ нужно не удалять, а отменять. Если уж так хочется удалить, то можно добавить метод delete в класс Order, который будет очищать связанные таблицы.
Цитата:( asderkdw @ 23-07-2012 22:48 Смотреть сообщение )
Но пока запускать этот двиг для коммерческого использования стремно, себе дороже.

Более 100 000 человек, создавших свой магазин на этом движке с вами не согласятся.
Цитата:( asderkdw @ 23-07-2012 22:48 Смотреть сообщение )
А прикручивать новые модули, так это ваще миф трудоголика. Не, ну можно, но тогда надо до дна ее раскапывать. А смысл? Все равно скоро новая версия выйдет и все сначала начинай, или почти все.

Если руки не оттуда растут, то это не проблема движка. Для престы сделано уже более 2000 модулей. Очевидно их делают не те, кому лень почитать документацию.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
asderkdw
Новичок
Сообщений: 10
Регистрация: 17-04-2012


27-07-2012 10:37
Цитата:( ors @ 24-07-2012 08:05 Смотреть сообщение )
Цитата:( asderkdw @ 23-07-2012 22:48 Смотреть сообщение )
Ну понимаю, тараканы есть всегда, но не столько же! За что не возьмись оно нормально не работает, все через :focus:
Нашли баги - пишите на багтрэкер.
Только я думаю, что багов этих вы сами понаделали.

Ага, сидел и прикалывался, чеб такого сделать плохого! :)
Цитата:( ors @ 24-07-2012 08:05 Смотреть сообщение )
Если в стандартной версии нет кнопки удалить заказ, то на это есть причина. Заказ нужно не удалять, а отменять. Если уж так хочется удалить, то можно добавить метод delete в класс Order, который будет очищать связанные таблицы.

Да мне она черта не нужна. Но почему то, Заказчик сайта отказывается понимать объяснения, почему он не может удалить заказы. Порядок во всем любит. Да и мне как-то не очень понятно, почему в 6-ти других юзаных движках есть, а в этом нужно еще и классы рисовать. Ну это мелочи...
Цитата:( ors @ 24-07-2012 08:05 Смотреть сообщение )
Цитата:( asderkdw @ 23-07-2012 22:48 Смотреть сообщение )
Но пока запускать этот двиг для коммерческого использования стремно, себе дороже.

Имелось ввиду делать на этом двиге сайты на заказ, как разработчик.
Цитата:( ors @ 24-07-2012 08:05 Смотреть сообщение )
Более 100 000 человек, создавших свой магазин на этом движке с вами не согласятся.

Ну во-первых, Глупость человеческая не имеет границ!!!
Во-вторых, Если в свое время при союзе, пол страны ездило на жигулях, то это не потому, что они лучше тайоты и не потому что они удобные и экономичные.
В-третьих, если вы посмотрите рейтинг CMS, то на первом мести стоит Джумла. Неужели, опираясь на этот факт вы осмелитесь утверждать, что это хороший двиг? :crazy:
Ни один уважающий себя веб-разработчик не применяет ее!
Ну и в-четвертых, после того как потрачено куча времени на отладку и запуск, или заплачено денег за разработку, уже не хочется менять ничего, и 100 000 владельцев это не тот показатель.
Сколько сотен тысяч оказались от этого двига? И какой процент от этих 100 000 довольны своим сайтом?
И сколько из них осознано выбрали престу в сравнении с аналогами магазинов?
Зрите в корень уважаемый коллега. ;)
Цитата:( ors @ 24-07-2012 08:05 Смотреть сообщение )
Цитата:( asderkdw @ 23-07-2012 22:48 Смотреть сообщение )
А прикручивать новые модули, так это ваще миф трудоголика. Не, ну можно, но тогда надо до дна ее раскапывать. А смысл? Все равно скоро новая версия выйдет и все сначала начинай, или почти все.
Если руки не оттуда растут, то это не проблема движка. Для престы сделано уже более 2000 модулей. Очевидно их делают не те, кому лень почитать документацию.

Ну обсуждать мои руки давайте не будем, все же я запустил магазин и в том виде в котором хотел заказчик, а не в том который навязывает дефолтная инсталяшка и бесплатный шаблон.
Да, цифирь - 2000 модулей звучит убедительно и круто. Но вы опять вводите в заблуждение общественность ;)
Эта цифра показывает общее кол-во для всех версий, и дубляжей одного и того же функционала.
Сколько из них бесплатных? Да ладно и это не главное.
Главное то, что когда от тебя требует заказчик прикрутить тот или иной функционал, то капнув 20-50, ну 100 модулей понимаешь, что проще самому сеть и написать то что нужно.
И рад бы это сделать, уверен что свое нормально работать будет. Но оказывается, что сначала нужно овладеть смарти, структурой db, и файловой структурой, не говоря уже классах и взаимосвязях переменных.
Да можно канешь, не святые горшки, вопрос в том, что существуют варианты по проще.

А вообще, прошу прощения, и тонкие струны души затронул и двиг обругал и нафлудил не по теме.
Наболело, крикнуть хотелось - Ааааааааа!
Больше не буду.
 
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
asderkdw
Новичок
Сообщений: 10
Регистрация: 17-04-2012


27-07-2012 10:50
Идея то в двиге заложена прекрасная и мощь функционала впечатляет и бесплатно при том. Страдания от того, что сырое оно еще - дитятко.
Окончательно не хороню, 1.5 на подходе....
 
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
YellowDuck


Профессионал
Сообщений: 1054
Откуда: Ярославль
Регистрация: 29-09-2009


27-07-2012 12:46
Престу не составляет труда допилить любому у кого есть желание.
Для этого не надо никаких спец знаний программирования.
Наверное у вашего заказчика был налаженный бизнес и соответственно требования к допиливанию были осознанные.

Для тех кто поднимается с нуля необходимо следующее:
1. Быть барыгой в хорошем смысле этого слова
2. базовые знания html, css, smarty (чтобы сверстать красивый шаб. и подправить по мелочи всякую хрень)
3. знания как продвинуть сайт
4. любые допилы чаще всего можно найти, а если нет сообщество prestadev.ru всегда помогает, за что огромное спасибо этому проекту и людям здесь общающимся

У меня нет знаний в программировании и тем, как мой сайт работает с 2009 года я доволен, начинал с версии 1.2.х от prestadev. 1.5 RC1 огромный шаг вперед от первых версий

Сейчас начинающий может поставить версию 1.4.8 из коробки настроить и все будет отлично работать, функционала в коробке на первое время хватает с лихвой.

Главное продавать, а не критиковать, на этом сайте вряд ли есть люди которых надо разубеждать в достоинствах престы.
 



Интернет-магазин товаров для детей yellowduck.ru
Хороший хостинг для Prestashop и не только one-hosting.ru
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Ответить Новая тема Новый опрос