<?php // Полная загрузка сервисных книжек, создан 2024-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С:Предприятие 8.2 (8.2.18.61) «Управление торговлей для Украины», редакция 2.3.
Спасибо.
(2) 342300, Отчет предназначен для конфигурации 1С: Розница редакции 2
Для Розницы 1.0 нет такого отчета?
Нет для розницы 1 такого отчета нет
Добрый день! Отчет можно формировать без указания конкретного поставщика?
(6) arsen81,
Добрый! нет нельзя надо допиливать
Если один и тот же товар поставляли Разные Поставщики — обработка неправильно выводит информацию. (включает в оборот обоих Поставщиков.)
Т.е. завышает обороты.
Для такого отчета (Отчет по продажам Поставщика) — это критично!
Зря потратился.
Добрый день!
Есть возможность по нескольним поставщикам формировать отчет?
(9)Прошу прощения, но я не помню.
Нет нельзя по нескольким — надо допиливать
Добрый день подскажите пожалуйста, отчет некорректно отображает суммы начального и конечного остатка.
1С:Предприятие 8.3 (8.3.9.2170)
Розница, редакция 2.2 (2.2.5.22)
к сожалению не помогу. Надо смотреть Вашу базу.
(12)
(12) Дмитрий, добрый вечер. Посмотрел скриншот, не понял в чём ошибка. По кол-ву всё сходится вроде. Или вопрос в суммах?
Вы недавно обновились и появилась ошибка или впервые воспользовались отчетом уже на этом релизе и обнаружили замечания?
Добрый день. Подскажите пожалуйста, будет ли работать данный отчет в 1С Розница 2.2.6.18?
(14) Суммы считает некорректно. Даже на вашем скриншоте это видно. Например строка № 4. На начало 712 приход 542 расход 813 на конец опять 712. Согласитесь, математика не идет.
А ничего похожего в Рознице 2 среди стандартных отчетов нет?
(16)Да где- то ошибка
человек бросил своё детище
Появился сервис «1С-Товары»:http://rozn.info/
«1С-Товары. Каталог товаров»
Включает в себя загрузку каталога товаров со штрихкодами в программу 1С из каталога «1С-Товары».
Предоставляется бесплатно на один год. Есть ограничение в 6 000 скачанных карточек (для пользователей с лицензией «Автозаказ» или «Аналитика продаж» — это ограничение увеличено до 20 000).
«1С-Товары». Автозаказ для магазина
Загрузка каталога товаров со штрихкодами в программу 1С.
Контроль товарных остатков и автоматический заказ товаров.
Стоимость: 1 000 руб. в месяц за один подключенный магазин.
«1С-Товары». Аналитика продаж для магазина
Загрузка каталога товаров со штрихкодами в программу 1С.
Анализ работы розничного магазина или сети магазинов.
Стоимость: 1 000 руб. в месяц за один подключенный магазин.
Отчет не учитывает ХАРАКТЕРИСТИКИ товаров (веса, размер и прочее) ???
Можно ли произвести разбивку по номенклатурным группам (товарным группам) ???
Спасибо.
(3)Доброго времени суток. Можете ли доработать Ваш отчет для УТ 11.4?
(22) ДА можно. Но это платно по стоимости в личку
(12) Добрый Вечер! Не ждите от этого отчета формирования сумм начального и конечного остатков. Сумма начального остатка рассчитывается из данных регистра закупки. Аналогично рассчитывается иэ этого регистра сумма конечного остатка. Сумма расхода рассчитывается из данных регистра продажи.
(16) Здесь математика не работает. Здесь такая логика работы этого отчета.
нужен такой же отчет для УТ 11.4 кто-нибудь встречал на просторах ?