Задать вопрос
  • Объединение нескольких интернет каналов на микротиках в один

    @digdream
    а как же пакет долетит до этого шлюза? через туннель который натянут поверх интернета же? тогда мы упремся в ограничение интернета местного аплинка
  • Что необходимо реализовать в ПО для интеграции онлайн-кассы по 54-ФЗ?

    @digdream Автор вопроса
    А чем готовый pos будет лучше?
    каким образом в него заносить данные/получать отдачу?
    если есть пример - хотябы даже просто название что имелось ввиду - буду очень благодарен.
    сейчас у нас если упростить есть главный филиал/склад, из него вещи распределяются по более мелким, которых 30шт, там они лежат, продаются, если некоторое время не продаются - возвращаются и перераспределяются (это всё автоматизировано уже).
    теперь нужно после продажи печатать чеки/проводить к ОФД.
  • Mysql. Как выбрать записи по ближайшей дате?

    @digdream Автор вопроса
    с порядком посмотрю, а второе к сожалению не подходит, т.к. следом надо по второму запросу строить статистическую таблицу с большим количеством полей и вычислений
  • Mysql. Как выбрать записи по ближайшей дате?

    @digdream Автор вопроса
    добавление индекса по thing_id+state_change_date существенно подняло производительность частичек (теперь весь запрос выполняется около 5 минут, приемлимо конечно, однако хотелось бы чуть быстрее). есть еще варианты как ускорить join?
    или может как то обойтись без join-ов?
  • Mysql. Как выбрать записи по ближайшей дате?

    @digdream Автор вопроса
    Спасибо, вроде то что надо, но очень уж длительный запрос получается. на тестовой выборке в 15000 элементов (23000 состояний) у меня показывает время около минуты
    /* Affected rows: 0  Найденные строки: 15 834  Предупреждения: 0  Длительность  1 query: 0,359 sec. (+ 50,591 sec. network)*/

    и, развивая этот запрос - пытаюсь объединить пару - до начальной даты и до конечной даты
    но видимо если первый join длинный и второй длинный, то все вместе - умножается и у меня еще не удалось дождаться результата:
    SELECT s.thing_id as start_tid, s.thing_status as start_ts, s.thing_price as start_tp, s.thing_store_num as start_tsnum,d.date_st as start_date 
        FROM `states` AS `s` 
        JOIN (
            SELECT `thing_id`, MAX(`state_change_date`) AS `date_st`
                FROM `states`
                WHERE `state_change_date` <= "2015-01-01"
                GROUP BY `thing_id`
        ) AS `d` ON `d`.`thing_id` = `s`.`thing_id` AND `d`.`date_st` = `s`.`state_change_date`
    right join
    (SELECT sf.thing_id as finish_tid, sf.thing_status as finish_ts, sf.thing_price as finish_tp, sf.thing_store_num as finish_tsnum,df.date_f as finish_date 
        FROM `states` AS `sf` 
        JOIN (
            SELECT `thing_id`, MAX(`state_change_date`) AS `date_f`
                FROM `states`
                WHERE `state_change_date` <= "2015-01-01"
                GROUP BY `thing_id`
        ) AS `df` ON `df`.`thing_id` = `sf`.`thing_id` AND `df`.`date_f` = `sf`.`state_change_date`
    ) as `ft` on `s`.`thing_id`=`ft`.`finish_id`
  • Mysql. Как выбрать записи по ближайшей дате?

    @digdream Автор вопроса
    с одной таблицей был вот такой запрос, полностью рабочий:
    QR.SQL.Add('select n.node_name, '+
       'count(case     when (date(s.shop_date)<"'+date2mysql(report_datestart.Text)+'" and status=2) or (date(s.shop_date)<"'+date2mysql(report_datestart.Text)+'" and status=4 and date(sell_date)>="'+date2mysql(report_datestart.Text)+'") then s.id end) as tot_cnt,'+
       'round(sum(case when date(s.shop_date)<"'+date2mysql(report_datestart.Text)+'" and (status=2) or (date(s.shop_date)<"'+date2mysql(report_datestart.Text)+'" and status=4 and date(sell_date)>="'+date2mysql(report_datestart.Text)+'") then total_weight end),2) as tot_wt,'+
       'sum(case       when date(s.shop_date)<"'+date2mysql(report_datestart.Text)+'" and (status=2) or (date(s.shop_date)<"'+date2mysql(report_datestart.Text)+'" and status=4 and date(sell_date)>="'+date2mysql(report_datestart.Text)+'") then kredit end) as tot_kr,'+
       'sum(case       when date(s.shop_date)<"'+date2mysql(report_datestart.Text)+'" and (status=2) or (date(s.shop_date)<"'+date2mysql(report_datestart.Text)+'" and status=4 and date(sell_date)>="'+date2mysql(report_datestart.Text)+'") then price end) as tot_pr,'+
    
       'count(case when date(s.shop_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and (status in(2,4)) then s.id end) as new_cnt,'+
       'round(sum(case when date(s.shop_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and (status in(2,4)) then total_weight end),2) as new_wt,'+
       'sum(case when date(s.shop_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and (status in(2,4)) then kredit end) as new_kr,'+
       'sum(case when date(s.shop_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and (status in(2,4)) then price end)as new_pr,'+
    
       'count(case when date(s.sell_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and status=4 then s.id end) as sell_cnt,'+
       'round(sum(case when date(s.sell_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and status=4 then total_weight end),2) as sell_wt,'+
       'sum(case when date(s.sell_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and status=4 then kredit end) as sell_kr,'+
       'sum(case when date(s.sell_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and status=4 then vyruchka end) as sell_pr,'+
       'sum(case when date(s.sell_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and status=4 and price>vyruchka then price-vyruchka end) as sell_discount,'+
    
    
       'count(case when store_num is not null and date(s.sell_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and status=4 then s.id end) as sell_l_cnt,'+
       'round(sum(case when store_num is not null and date(s.sell_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and status=4 then total_weight end),2) as sell_l_wt,'+
       'sum(case when store_num is not null and  date(s.sell_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and status=4 then kredit end) as sell_l_kr,'+
       'sum(case when store_num is not null and date(s.sell_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and status=4 then vyruchka end) as sell_l_pr,'+
    
       'count(case when date(s.sell_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and status=5 then s.id end) as ret_cnt,'+
       'round(sum(case when date(s.sell_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and status=5 then total_weight end),2) as ret_wt,'+
       'sum(case when date(s.sell_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and status=5 then kredit end) as ret_kr,'+
       'sum(case when date(s.sell_date) between "'+date2mysql(report_datestart.Text)+'" and "'+date2mysql(report_dateend.Text)+'" and status=5 then price end) as ret_pr,'+
    
       'count(case when (status=2 and date(s.shop_date)<="'+date2mysql(report_dateend.Text)+'") or (date(s.shop_date)<="'+date2mysql(report_dateend.Text)+'" and status=4 and date(sell_date)>"'+date2mysql(report_dateend.Text)+'") then s.id end) as end_cnt,'+
       'round(sum(case when (status=2  and date(s.shop_date)<="'+date2mysql(report_dateend.Text)+'") or (date(s.shop_date)<="'+date2mysql(report_dateend.Text)+'" and status=4 and date(sell_date)>"'+date2mysql(report_dateend.Text)+'") then total_weight end),2) as end_wt,'+
       'sum(case when (status=2 and date(s.shop_date)<="'+date2mysql(report_dateend.Text)+'") or (date(s.shop_date)<="'+date2mysql(report_dateend.Text)+'" and status=4 and date(sell_date)>"'+date2mysql(report_dateend.Text)+'") then kredit end) as end_kr,'+
       'sum(case when (status=2 and date(s.shop_date)<="'+date2mysql(report_dateend.Text)+'") or (date(s.shop_date)<="'+date2mysql(report_dateend.Text)+'" and status=4 and date(sell_date)>"'+date2mysql(report_dateend.Text)+'") then s.price end) as end_pr '+
    
    	 'from nodes n left join storage s  on n.Id=s.node_num group by s.node_num order by node_name'
       );
  • Mysql. Как выбрать записи по ближайшей дате?

    @digdream Автор вопроса
    необходимо в один запрос, мало того, в результате это должен получиться один столбец из почти двух десятков других с разными условиями. без второй таблицы результирующий запрос получался под 5Кб текста, теперь надо переделать с учетом состояний.
  • Как удалять из бд все записи кроме последних?

    @digdream
    уточните, какие поля есть в таблице?
  • Почему компьютер стал зависать на этапе post-теста bios?

    @digdream Автор вопроса
    Итак, подключил к другому компу - несколько раз он тоже стал показывать лишь черный экран, но по нажатию DEL в биос заходил, но в некоторый раз (делал манипуляции с настройками биоса) показал черное окошко с ошибкой загрузки виндовс. загрузился с установочного диска, запустил средство устранения неполадок - оно молча что то поправило и винда стала загружаться. осталось доставить этот винт в родной компьютер и посмотреть результат, будет ли грузиться там
  • Почему компьютер стал зависать на этапе post-теста bios?

    @digdream Автор вопроса
    так я же выше указал, что скопировал образ на другой винт и он перестал загружаться и с этого винта тоже, хотя до этого грузился
  • Почему компьютер стал зависать на этапе post-теста bios?

    @digdream Автор вопроса
    Да, биос сбросить - это первое что попробовал. кучу всяких параметров там крутил (там их касаемо загрузки только с десяток наберется), но ведь что интересно, при тех же настройках с других винтов - грузится (пробовал с двух, один из которых впоследствии стал клоном родного с той же участью), а с родного - нет
    и зависает все именно тогда, когда биос должен показать, какие он устройства нашел, а в случае с клонированным винтом, подключенным через USB он его стал показывать, но все равно виснет
  • Почему компьютер стал зависать на этапе post-теста bios?

    @digdream Автор вопроса
    Ну естественно BIOS, чего еще можно там перешивать? )
  • Интернет-радио плеер

    @digdream Автор вопроса
    а не подскажете в каком репозитарии есть kmod-sound-core?
    почему-то в entware и optware в списке доступных пакетов нет этого пакета
  • Интернет-радио плеер

    @digdream Автор вопроса
    на кухне уже имеется DNS-ный донг с Андроидом в такой же роли. хочется отдельную коробочку, с которой в случае чего можно и на улицу/природу с флешкой выйти и послушать фоном музыку
  • Обмен данными с удаленными клиентами

    @digdream Автор вопроса
    тут есть варианты обхода, например: закачиваем файл с одним расширением например file01.up, по окончании загрузки переименовываем файл в нормальный вид file01.rar.
    либо — файл семафор, при наличии которого сервер не будет пытаться скачивать содержимое, пока он есть. — тут тоже возможны косяки в большей мере чем в первом случае
  • Обмен данными с удаленными клиентами

    @digdream Автор вопроса
    да, такую штуку я уже делал на базе the bat!
    с ftp мне кажется понадежнее будет
  • Обмен данными с удаленными клиентами

    @digdream Автор вопроса
    win32, импорт и экспорт в любом виде, так как софт будет писаться на delphi+embedded mysql
  • Как бороться с вымогателями, шифрующими документы?

    @digdream Автор вопроса
    нод со свежими базами не уберег (
    к сожалению в антивирусы могут добавлять поддержку лишь после того как кто нибудь купит разблокировщик и поделится с обществом

    и по поводу заявления — просто в полицию? есть же специальные отделы по кибер преступности. вот может под их контролем и совершить контрольную закупку?
    стандартная полиция ИМХО просто отмахнется