Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 1, 2010 14:11:52

Griffon
От: Ukrain, Zaporozhie
Зарегистрирован: 2009-03-04
Сообщения: 324
Репутация: +  11  -
Профиль   Отправить e-mail  

"Мои продажи". Малому бизнесу посвящается.

+
Cделал кнопки вверх-вниз.
Там в начале скрипта метод update_db надо вызвать при обновлении (Или разкоментить при первом запуске строчку в конструкторе). Он добавит поле pos_index к товарам.
Пока не нашел кнопку которая строит выпадающее меню с товарами в главном окне. Если там дерево строится так же как и здесь в методе build_tree, то надо в запрос добавить order by pos_index, чтобы это работало.
И конечно же надо кнопочки как-то разместить в пространстве и оформить красиво.
Скрипт - http://gcomreader.googlecode.com/files/articles_frame.py

p.s. не нашел места для упоминания о себе :)



Офлайн

#2 Июнь 1, 2010 15:45:35

Griffon
От: Ukrain, Zaporozhie
Зарегистрирован: 2009-03-04
Сообщения: 324
Репутация: +  11  -
Профиль   Отправить e-mail  

"Мои продажи". Малому бизнесу посвящается.

Нашел.
После того как добавится поле pos_index можно заменить файл main_win - http://gcomreader.googlecode.com/files/main_win.py
Тут тоже убрал повторение кода, и добавил ту самую сортировку.

В файле app\plagins\main\login_win.py
В конце метода set_user добавить строчку self.passw.focus() для автоматической установки фокуса на поле ввода пароля, если его надо вводить.



Офлайн

#3 Июнь 1, 2010 16:08:33

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

"Мои продажи". Малому бизнесу посвящается.

Спасибо! Теперь буду думать над всем остальным :) обновление базы данных сделаю отдельным “плагином”, который будет помещен в папку execute (от туда скрипты выполняются при запуске программы), с последующим удалением себя из этой папки :)



Офлайн

#4 Июнь 1, 2010 16:12:04

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2260
Репутация: +  41  -
Профиль   Отправить e-mail  

"Мои продажи". Малому бизнесу посвящается.

табы в коде детектед В)

Офлайн

#5 Июнь 1, 2010 16:22:53

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

"Мои продажи". Малому бизнесу посвящается.

slav0nic
табы в коде детектед В)
знаю :( привык пользоваться Scite, в котором по дефолту \t, все руки не доходят перенастроить. Знал ведь что это кого то будет смущать, хотел ведь сделать replace('\t',' ') всех исходников перед релизом, но забыл :)



Офлайн

#6 Июнь 1, 2010 17:03:22

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2260
Репутация: +  41  -
Профиль   Отправить e-mail  

"Мои продажи". Малому бизнесу посвящается.

Tools/scripts/reindent.py в помощь

Офлайн

#7 Июнь 1, 2010 19:12:24

Griffon
От: Ukrain, Zaporozhie
Зарегистрирован: 2009-03-04
Сообщения: 324
Репутация: +  11  -
Профиль   Отправить e-mail  

"Мои продажи". Малому бизнесу посвящается.

Я, дурак, уже привык ctrl+c -> ctr+v на отступах. :) Нет чтоб настройки поменять…

Кстати в моём коде баг.
При добавлении товара и категории.

self.app.app.db.execute('select count(id) from article where parent=? and dep=?', (self.current_id, self.cur_dep+1, ))
pos_index = self.app.app.db.fetchall()[0][0]
надо max(pos_index), а не count().
И соответственно pos_index = self.app.app.db.fetchall() + 1
И это наверное последний баг. :)



Отредактировано (Июнь 1, 2010 19:14:10)

Офлайн

#8 Июнь 2, 2010 11:23:35

Griffon
От: Ukrain, Zaporozhie
Зарегистрирован: 2009-03-04
Сообщения: 324
Репутация: +  11  -
Профиль   Отправить e-mail  

"Мои продажи". Малому бизнесу посвящается.

А почему не используется row_factory? Это ведь намного удобней. Или есть с этим проблемы какие-то?

Сейчас делаю плагин для просмотра продаж за период. Хочу убрать повторные запросы к той же таблице. И это так неудобно считать порядковые номера данных.

upd:
Предварительный результат - http://gcomreader.googlecode.com/files/show_by_period_frame.py
Будет работать только если в plagins\main\main.py после self.con=sql.connect('app/db/main.db') добавить self.con.row_factory = sql.Row
На работу в целом это не должно повлиять.



Отредактировано (Июнь 2, 2010 16:03:13)

Офлайн

#9 Июнь 2, 2010 16:27:52

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

"Мои продажи". Малому бизнесу посвящается.

Griffon, еще раз спасибо. Сегодня проапдейтил программу (обновляется через настройки > обновления +в svn)
Твой вариант с перетаскиваньем категорий пока не стал включать. Добавил твою self.redraw в окне редактирования товаров. Но self.tree.see(self.current_id) не работает у меня, пришлось пройтись по словарю self.node_list в поисках итемов ('I001' и т.п.)

Griffon
Сейчас делаю плагин для просмотра продаж за период.
интересно, а что за форма №10, для чего она?



Офлайн

#10 Июнь 2, 2010 17:49:04

Griffon
От: Ukrain, Zaporozhie
Зарегистрирован: 2009-03-04
Сообщения: 324
Репутация: +  11  -
Профиль   Отправить e-mail  

"Мои продажи". Малому бизнесу посвящается.

Чтобы работало self.tree.see надо изменить метод build_tree как у меня. На этом всё завязано, смысл в том чтобы дать айди элементам в дереве такие же как и в БД. Тогда ходить по дереву становится легче, ведь айди элемента мы знаем.

У нас на Украине это форма отчётности которую должен вести каждый ЧП на единном или фиксированном налоге.
Форма ведётся в произвольной форме, записывается ежедневный доход, расход, и прибыль.
Можно в принципе обозвать “В PDF посуточно”. Просто я, не думая, интуитивно назвал так.

Это тебе спасибо. У меня брат как раз небольшой магазинчик решил открыть. Не успел я задуматься как сразу увидел твой проект. Так что вполне возможно что будет использоваться именно эта программа.
Выходит у меня двойной интерес - программирование как хобби, и прикладной.



Отредактировано (Июнь 2, 2010 18:02:56)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version