<?php // Полная загрузка сервисных книжек, создан 2025-01-05 12:44:55
global $wpdb2;
global $failure;
global $file_hist;
///// echo '<H2><b>Старт загрузки</b></H2><br>';
$failure=FALSE;
//подключаемся к базе
$wpdb2 = include_once 'connection.php'; ; // подключаемся к MySQL
// если не удалось подключиться, и нужно оборвать PHP с сообщением об этой ошибке
if (!empty($wpdb2->error))
{
///// echo '<H2><b>Ошибка подключения к БД, завершение.</b></H2><br>';
$failure=TRUE;
wp_die( $wpdb2->error );
}
$m_size_file=0;
$m_mtime_file=0;
$m_comment='';
/////проверка существования файлов выгрузки из 1С
////файл выгрузки сервисных книжек
$file_hist = ABSPATH.'/_1c_alfa_exchange/AA_hist.csv';
if (!file_exists($file_hist))
{
///// echo '<H2><b>Файл обмена с сервисными книжками не существует.</b></H2><br>';
$m_comment='Файл обмена с сервисными книжками не существует';
$failure=TRUE;
}
/////инициируем таблицу лога
/////если не существует файла то возврат и ничего не делаем
if ($failure){
///включает защиту от SQL инъекций и данные можно передавать как есть, например: $_GET['foo']
///// echo '<H2><b>Попытка вставить запись в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>$m_comment));
wp_die();
///// echo '<H2><b>Возврат в начало.</b></H2><br>';
return $failure;
}
/////проверка лога загрузки, что бы не загружать тоже самое
$masiv_data_file=stat($file_hist); ////передаем в массив свойство файла
$m_size_file=$masiv_data_file[7]; ////получаем размер файла
$m_mtime_file=$masiv_data_file[9]; ////получаем дату модификации файла
////создаем запрос на получение последней удачной загрузки
////выбираем по штампу времени создания (редактирования) файла загрузки AA_hist.csv, $m_mtime_file
///// echo '<H2><b>Размер файла: '.$m_size_file.'</b></H2><br>';
///// echo '<H2><b>Штамп времени файла: '.$m_mtime_file.'</b></H2><br>';
///// echo '<H2><b>Формирование запроса на выборку из лога</b></H2><br>';
////препарируем запрос
$text_zaprosa=$wpdb2->prepare("SELECT * FROM `vin_logs` WHERE `last_mtime_upload` = %s", $m_mtime_file);
$results=$wpdb2->get_results($text_zaprosa);
if ($results)
{ foreach ( $results as $r)
{
////если штамп времени и размер файла совпадают, возврат
if (($r->last_mtime_upload==$m_mtime_file) && ($r->last_size_upload==$m_size_file))
{////echo '<H2><b>Возврат в начало, т.к. найдена запись в логе.</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>'Загрузка отменена, новых данных нет, т.к. найдена запись в логе.'));
wp_die();
return $failure;
}
}
}
////если данные новые, пишем в лог запись о начале загрузки
/////echo '<H2><b>Попытка вставить запись о начале загрузки в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>0, 'last_size_upload'=>$m_size_file, 'comment'=>'Начало загрузки'));
////очищаем таблицу
$clear_tbl_zap=$wpdb2->prepare("TRUNCATE TABLE %s", 'vin_history');
$clear_tbl_zap_repl=str_replace("'","`",$clear_tbl_zap);
$results=$wpdb2->query($clear_tbl_zap_repl);
///// echo '<H2><b>Очистка таблицы сервисных книжек</b></H2><br>';
if (empty($results))
{
///// echo '<H2><b>Ошибка очистки таблицы книжек, завершение.</b></H2><br>';
//// если очистка не удалась, возврат
$failure=TRUE;
wp_die();
return $failure;
}
////загружаем данные
$table='vin_history'; // Имя таблицы для импорта
//$file_hist Имя CSV файла, откуда берется информация // (путь от корня web-сервера)
$delim=';'; // Разделитель полей в CSV файле
$enclosed='"'; // Кавычки для содержимого полей
$escaped='\
Новая версия понравилась.
Порекомендую подруге опробовать на маленьком галантерейном магазинчике.
ах … ох … ах, какОй рОзОвый крОлик … прямО душка … вотмилашка …
Ну тогда вот этого можно
… тигр хоть и красив и грозен … но он одинок …
… розовыйКролик — не только «розовый» но ещЁ и узнаваемый и так хочется взять в «руки» … к тому же он тАкОй «дурасель»-евый …
… и даже лучше чем военизированная амазонка — всех агрессирующая …
… отличный рекламный ход … не притязательный но настойчиво безЛичный … брАво … можно поставить в ровень с рекламой «кассирочки» …
… ПодлецТалантливОрганизованЭнергичен … вОООт …
… ОДНОЗНАЧНО — одна из лучших рекламных компаний …
… ПодлецДалекоПойдЁт … ВоооТ …
…
п.с. 1.:
надеюсь, в рекламных целях, ты будешь постоянно продлевать :
» Это полнофункциональная демонстрационная версия — ограничение до только по времени до 10.01.10 г.» …
… дверь всегДА должна быть приОткрытой … вот …
п.с. 2.:
у ЧЕ есть несколько обалденных товарных продуктов … но он слишком занят своей работой … зато у него есть чему поучиться и в рекламной компании то же — как продлевать и как привлекать…
п.с. 3.: великие люди — великие дела …
п.с. 4.: может пора на ИС сделать «Антологию» или «Онтологию» «Выдающихся Творений»
… виноватOFFтоп и ЗАпотокСОзнания …
То, что штуку берут за програмку ладно, но к этой програмке нужна платформа! Платформу автор оплачивает сам? В качестве фронтов должны работать дешёвые програмки, 1С такое не нужно (все базовые сделаны для печати бланков и ни какого торгового оборудования), т.ч. я лучше заплачу за драйверы для торгового оборудования и програмку которая их поддерживает легально.
(6) Платформой здесь не торгуют. Предполагается, что у здешних посетителей она есть — иначе, на кой черт их сюда, на одноэсный сайт занесло?
Приятный, полноценный продукт. «Антикризисное» предложение. Чего еще надо?
(7) Поддерживаю. Не первая конфигурация выставляется на сайте, вопрос не возникал, в таком случае, резонный вопрос к автору коммента — а для его нетленок кроме платформы еще и конфигурации нужны или их «автор оплачивает сам?» (6) — ниАчем.
Блин.. Что-то интерфейс решения подозрительно похож на одну мою программульку…
Но проверять не стану, ибо даже если и так (что не факт), то не жалко 🙂
При попытке распечатать товарный чек вижу:
{Документ.Чек.Форма.Модуль(507)}: Неверное имя Чек
(10) ну тогда я спокоен — точно не моё :)))
(9) Окно конфигуратора почти у всех одинаковое. Оно ни мое ни твое — оно Наше
(10)
Выполните настройки печати:
Обработки — Настройка торгового учета — Принтер чеков — Выберите один из трех вариантов ФОРМЫ печти Товарного чека.
(исправлю, нет проверки на дефолтное значение — один раз поставишь и уже не снимешь) Спасибо.
Исправил.Проверил.Обновил.
(12) я не про окно конфигуратора 😉
Давно ищу простую и удобную конфигурацию для небольшого розничного магазина с большим к-вом товаров. Ента для нас, думаю, как раз. Хорошо продумана с тз розницы.
Есть вопросы
— что за отчет «Реестр цен» появляется при нажатие на «прайс-лист». Да и в самом отчете вместо «арт» пишется «наимен.товара». Надо бы поправить.
-Теперь по ДК. Магазин получает из офиса пачку ДК. Как производиться их учет, каким документоми и как офис получает инфу о движение ДК.?
Автор, програмка интересная. А есть правила обмена с ТиС?
в приходной накладной поступают ДК
при пробитии ЧЕКА (согласно Вашим настройкам программы — просто дисконтая карта или влючена накопительная система скидок) сканируете ДК — запись появляется в чеке (заполняете данные клиента) история сохраняется. При следующей покупке ДК при сканирование — покажет скидку.
Обмен с офисом настравается по разному (это отдельная тема)
— при наличии компоненты УРИБ — МАГАЗЬКА (NR) совершенно легко и просто настраивается на автообмен
(15) Вам отвечу на почту
— выгрузка загрузка через XML (однотипные базы)
— выгузка загрузка с ТИС
то, что я прочел о ней, мне понравилось!!! Осталось только её установить…
(18) Спасибо. Все проще, чем Вы думаете
http://www.magazka.narod.ru/ustanovka.htm
В говорите, что ДК учитываются в приходной накладной, Согласен, можно и новый справочник можно не заводить — пусть идет как товар, Далее при выдаче сканируется ДК, продавец улыбается, карточка переходит в теплые руки покупателя,, И не ясно каким образом в вашей программе списываются ДК из товарной базы при выдаче их покупателю? А ведь это нужна для контроля 😮
Ну и со всем обойден момент с Подарочными Сертификатами, А жаль, это бы еще больше увеличило ценность продукта
Приходная накладная:
товар : Дисконтные карты с … по ….. шт. кол-во 200 шт.
Документ «Чек»
товар : Куртка ….. 1 шт. цена 5200 руб.
//положена ДК сумма покупки больше 5000 (настраивается Вами порог выдачи)
товар: Дисконтаная карта №…… 1 шт. цена…..
документ проводится
в справочник «Дисконтные карты» попадает новый элемент
№ карта, дата выдачи , сумма покупки и все данные клиента.
Всегда можно посмотреть историю ДК и покупок.
Подарочные сертификаты, товар откладывается под залог, учет товара проданного в кредит — будет в 2.0.021 (ориентировочно выход релиза 20.12.09)
какие модели фр, сканера, тсд поддерживает конфигурация?
см.http://www.atol.ru/support/programs/
практически все мне известные. если нужно то парктически любой добавлю
(20) Спасибо, я понимаю что «чек» это расходная накладная, Но надо ведь и в другой магазин сети офис должен передать, что карточка выдана. И покупатель может и там получит скидку.
Опаа., только сейчас обнаружил, что в этом варианте конфигурации нет обмена с офисом, Или Вы об этом забыли сообщить?
— отсутствуют учет в разрезе размерного ряда (у товара нет размера)
— изменен главный интерфейс программы (по желанию предложу Вам 1-3 варианта дизайна на Вашу тему (для зарегистрированных пользователей))
Нам это, к сожелению, не подходит. 🙂 Хорошо бы вернуть этот обмен.
Сейчас большенство ИП имеют нескоько точек,а без обмена вы сузили себе рынок.
(23) Вы лучше спросите, как это настроить ))) чем громогласно так заявлять. все настраивается в программе штатным способом и многие работают с более 3 точек продажи. Автообмен работает на ура…и никто не убирал в этой версии ничего. К чему Вы цитату привели ?
Только облегчил вариант, а функциональность не пострадала. А рынок только расширяется. Удачи Вам !Это Ваш выбор.
Подарок к Новому году ! Бесплатная регистрация для МАГАЗЬКА
Скачать тут
Пусть и у Вас будет праздник
Вам нехочется платить за чужие программы, Вас бесит закрытый код и конфигуратор.
Скачайте и насладитесь свободой.
Обмен с ТиС как-то реализован?
(26) Да реализован и выгрузка и загрузка
подскажите где в демо версии можно попробовать обмен с тис, не найду что-то
(28) В демо нет этой обработки. Пиши в личку обсудим
(24)Спасибо, и сорри за дотошность. Мне нравиться в программе проработка интерфейса , оригинальность «чека» и настроек, средства анализа продаж и продавцов очень ну и забавны «мастера».
(16)А вот распределенная база, усложнит использование и администрирование системы. Поэтому обьясните мне,- я не большой специалист по 1с ,- чем лучше УРИБ вместо универсальной выгрузки-загрузки. Или я что-то не понимаю? Но покупать отдельно УРИБ с ключом -это точно не для маленьких магазинов. Да, и дешевый проводной интернет не является надежной средой для передачи файлов, но это уже частности
С уважением и благодарностью за ваш труд.
(30) Давайте так, опишите свою задачу (Вы ее знаете я нет)
сколько магазинов, удаленность,ассортимент, и.т.д и пришлите мне (magazka@narod.ru)
а я Вам приведу ЗА и ПРОТИВ и подскажу как правильно настроить программу и получать от работы удовольствие. Договорились ?
Новое в релизе 2.0.025
Главное событие релиза:
МАГАЗЬКА(NR) — теперь может использоваться в магазинах, где обязательно нужен размерный ряд (одежда, обувь, аксессуары),
а также в магазинах без размерного ряда (канцтовары, запчасти, книги, хоз.товара — т.е одноразмерный товар)
настраивается одним кликом в обработки — Обработка «Настройка торгового учета» — вкладка «По умолчанию»
Если поставить галочку «Размер — не нужен», то графа «Размер» пропадет во всех объектах конфигурации.
В документах «Приходная накладная» и «Ввод остатков» — при сканирование НОВОГО товара, а также в формах списка
Номенклатуры — появилась дополнительная возможность — БЫСТРОГО и самое ГЛАВНОЕ настраиваемого под себя —
ввода нового элемента справочника Номенклатуры (т.е. нового товара), там же добавилась возможность настроить
таблицу «Последние добавленные элементы» — очень удобно видеть 10-100 позиция недавно добавленного товара.
Добавилась интеллектуальная проверка размерного ряда у товара (при его выборе или изменении в документах)
При выборе «Размера» — форма открывается только для просмотра (защита от неправильно добавляемых позиций)
В справочнике «Номенклатура» на форме списка , добавилась дополнительная информация (настраиваемая)
Изменены печатные формы у документа «Отчет комиссионера»
При проведении документа «Возврат товара» и «Возврат брака» — будет автоматически (настраивается) предложен
заполненный на основании РКО (расходно-кассовый ордер)
В обработке «Печать этикеток» — появилась опция сохранения настроек пользователя
Возможность установки не нормированной рабочей смены (несколько смен в сутки) . На главном окне программы
на вкладке информация — добавлены позиции : период смены, кол-во чеков за смену, средний чек.
Ввод пароля на главном окне — срабатывает по одному нажатию клавиши «Еnter»
а программа обновляется как магазька(с)