<?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) Сергейка, а вы как в известной юмореске: пацаны с первого чтения не понимают, вот и принимают в третьем чтении …
🙂
эти много букафф в общем для глбухов, у которых есть обособки, они должны понять что там к чему …
если глбуху это будет нужно, то добавить в допвозможности этот файл , сделать 50.1.1, 50.1.2 и вперед
(2) Суть не в том, что много описания разработки, а в то что аннотации СЛИШКОМ много.
Пусть всё это описание будет, но… В самом теле выпуска… В кратком описании достаточно 2-3-х предложений, что бы заинтересовать, дать понять нужно ли это пользователю.
ИМХО сейчас — просто не читабельно.
(2) Сергейка, спасибо за совет. Это моя первая выгрузка, я не щнала еще как нужно, хотела как можно больше объяснить, чтобы всем было понятно
Получилось как говорил Черномырдин… Хотела как лучше…
Посоветуйте, а где ж тогда все это нужно было написать? Отдельным вложенным файлом? Типа инструкции ?
Инструкцию + ert-шник упакуй и клади. А в описание — несколько рекламных (но правдивых!) фраз + ссылка «Подробности в описании».
И люди к Вам потянутся! :))
А я вот плюсую за одно только описание (саму обработку не качал) 😉
Именно описание и понравилось, как и (6). Жаль, что не для 8.1. Хорошая идея с доп. листом, где сведен общий итог по кассе.
Если интересно, мы не так делали, проверки проходили на отл. В приказе или в учетной политике пишем: «Наличие территориально удаленных обособленных подразделений не предоставляет возможности обеспечить безопасную ежедневную сдачу денежных средств в единую главную кассу организации, хранение остатков неиспользованных денежных средств в одной кассе, подтверждение кассового остатка. Это приводит к тому, что в таких случаях вести одну кассовую книгу невозможно, поэтому филиалы, территориально удаленные от головной организации, самостоятельно осуществляют все кассовые операции и регистрируют их в кассовой книге.
В филиалах ведутся отдельные кассовые книги. (Такие действия не противоречат п. 3 ст. 5 Федерального закона от 21.11.1996 N 129-ФЗ «О бухгалтерском учете», в котором указано, что учреждения, руководствуясь законодательством РФ о бухгалтерском учете, нормативными актами органов, регулирующих бухгалтерский учет, самостоятельно формируют свою учетную политику исходя из своей структуры, отрасли и других особенностей своей деятельности)».
Вот это настоящая разработка!!!
(7) А остатки и движения по 50-му счету как учитываются?
(9) Полность самостоятельные ОСП — отдельный лимит кассы, р/с, кассовая книга. Главбух холдинга по ним только сводный баланс делала.
То есть, в базе головной организации не отражались хоз. операции филиалов, в т.ч. по кассе.
(10) Спасибо за науку.
(10)
Выделение на отдельный баланс — это организация бухгалтерского учета операций филиала обособленно от операций головной организации. Выделение на отдельный баланс особого юридического статуса выделение не предоставляет.Создание «отдельных» касс удаленных подразделений, «отдельных» кассовых книг, «отдельных» томов или «разделов» единой кассовой книги — организации пытаются обосновывать собственной учетной политикой.
Однако, приказы, Регламенты и учетная политика организации не могут каким-либо способом изменять установленные законодательством правовые нормы и придавать им иной смысл (например, дополнить положение п.23. Порядка, о том что «каждое предприятие ведет только одну кассовую книгу, которая должна быть пронумерована, прошнурована и опечатана сургучной или мастичной печатью, а количество листов в кассовой книге заверяется подписями руководителя и главного бухгалтера предприятия…»
Соответственно никакого отдельного лимита кассы. Лимит кассы устанавливается В ЦЕЛОМ ДЛЯ ОРГАНИЗАЦИИ , а уже приказом руководителя лмит «разбивается» для каждого подразделения.
Использование организацией отдельных кассовых книг в своих обособленных структурных подразделениях является основанием для применения норм ст. 15.1. КоАП РФ
посмотрите ссылку
http://www.pro-uchet.ru/exp/faq/225.html
и вот еще
http://www.r61.nalog.ru/cons.php?id=163431&topic=ko61_kkm
и вот еще
http://agencybarrister.ucoz.ru/publ/1-1-0-2
(9) НЕЛЬЗЯ ВЕСТИ НЕСКОЛЬКО КАССОВЫХ КНИГ В ОДНОЙ ОРГАНИЗАЦИИ, ЭТО НАРУШЕНИЕ, ХОТЬ ВЫ ЭТО И ПРОПИШЕТЕ В ВУЧЕТНОЙ ПОЛИТИКЕ
И ТО, ЧТО ВАШ ГЛАВНЫЙ БУХГАЛТЕР ТАК ДЕЛАЛА, ЭТО НЕ ПОКАЗАТЕЛЬ ДЛЯ ОСТАЛЬНЫХ ГЛАВНЫХ БУХГАЛТЕРОВ
(7) А остатки и движения по 50-му счету как учитываются?
К СЧЕТУ 50 ОТКРЫВАЮТСЯ СУБСЧЕТА 50.1.1 — ГОЛОВНАЯ КАССА, 50.1.2 — ЧАСТЬ ОБОСОБЛЕННОГО ПОДРАЗДЕЛЕНИЯ
соответственно сумма остаток 50.1.1 и 50.1.2 дает остатко по 50.1 в целом по организации и этот остаток не должен превышать лимит , согласоанный с обслуживающим банком
ЦЕНТРАЛЬНЫЙ БАНК РОССИЙСКОЙ ФЕДЕРАЦИИ
ДЕПАРТАМЕНТ НАЛИЧНОГО ДЕНЕЖНОГО ОБРАЩЕНИЯ
ПИСЬМО
от 11 декабря 2008 г. N 29-1-1-11/7735
О ПОРЯДКЕ ВЕДЕНИЯ КАССОВЫХ ОПЕРАЦИЙ
ОБОСОБЛЕННЫМИ СТРУКТУРНЫМИ ПОДРАЗДЕЛЕНИЯМИ ОРГАНИЗАЦИИ
Департамент наличного денежного обращения Банка России сообщает следующее.
При организации кассовой работы предприятия, объединения, организации и учреждения (далее — организация) руководствуются «Порядком ведения кассовых операций в Российской Федерации», утвержденным решением Совета директоров Банка России от 22 сентября 1993 года N 40, в соответствии с которым каждая организация ведет одну кассовую книгу, в которой учитываются все поступления и выдачи наличных денег организации.
Обособленные структурные подразделения организации, расположенные вне места ее нахождения (далее — обособленное подразделение), ведут в двух экземплярах отчет кассира, содержащий все реквизиты кассовой книги. Первый экземпляр отчета кассира остается в обособленном подразделении. Второй экземпляр отчета кассира вместе с прилагаемыми к нему кассовыми и подтверждающими документами передается в организацию. При этом передача отчета кассира в организацию может осуществляться в электронном виде в соответствии с требованиями законодательства Российской Федерации. В этом случае передача отчета кассира на бумажном носителе с прилагаемыми кассовыми и подтверждающими документами осуществляется в соответствии с утвержденными в организации правилами документооборота.
В организации на итоговые суммы наличных денег, содержащиеся во втором экземпляре отчета кассира обособленного подразделения, оформляются приходный и расходный кассовые ордера и производятся записи в кассовой книге.
Заместитель директора
Ю.М.ЛОБОДА
(16) Спасибо. Не знала об этом письме ЦБ.
(15) Елена, повторюсь, мне очень понравилось описание, жаль, что не для 8.1. Отличная идея с доп. листом, где сведен общий итог по кассе.
МОЙ КОММЕНТАРИЙ НИ В КОЕМ СЛУЧАЕ НЕ РУКОВОДСТВО К ДЕЙСТВИЮ. Прошу прощения, если ввела кого-то в заблуждение. Написала его опрометчиво, опираясь на предыдущий положительный опыт, без учета письма ЦБ от 11.12.08.
К сожалению, порядок ведения единой кассовой книги методом ведения нескольких разделов, приведенный вами, также не однозначно правильный, даже с учетом его закрепления в учетной политике. Но – он самый оптимальный из всех, по-моему. И я благодарна вам за материал.
(15)Маленькие уточнения.
> «Использование организацией отдельных кассовых книг в своих обособленных структурных подразделениях является основанием для применения норм ст. 15.1. КоАП РФ»
-Отмечу, что нарушения по ведению кассовой книги сами по себе не образуют состава административного правонарушения.
> «Соответственно никакого отдельного лимита кассы. Лимит кассы устанавливается В ЦЕЛОМ ДЛЯ ОРГАНИЗАЦИИ , а уже приказом руководителя лмит «разбивается» для каждого подразделения.»
— Верно для подразделений, не имеющих самостоятельного баланса и счетов в учреждениях банков. «По представительствам, филиалам и другим обособленным подразделениям предприятия, расположенным вне места его нахождения, составляющим отдельный баланс и имеющим счета в учреждениях банков, лимит остатка наличных денег в кассе устанавливается обслуживающими учреждениями банков по месту открытия соответствующих счетов структурных подразделений.»
— При открытии операционных касс Кассир головного офиса помимо кассовой книги организации должен вести книгу учета принятых и выданных кассиром денежных средств (форма N КО-5) — ?.
> «То, что ваш главный бухгалтер так делала, это не показатель для остальных главных бухгалтеров». Это я так делала 🙂 , давно, когда еще не было письма ЦБ от 11.12.08. Вы мне льстите, конечно же, комментарий — не указание. Но, если человек работает главбухом, он не примет на веру какой-то комментарий. Изучит весь материал, примет решение. И возьмет на себя ответственность за это решение. Когда-то в нашей ситуации этот способ казался единственно верным и действенным.
Повторюсь — была не права в 7 и 10. Спасибо.
(11) Ни в коем случае не используйте комментарии 7 и 10, как руководство к действию при ведении кассовых операций в обособленных структурных подразделениях. Высказывания ошибочны.
(20) Спасибо за науку — 2.
Подерживаю плюсом этот проект за развитие и освещение проблемы кассовых операций в организациях с обособлеными подразделениями
(15), (16), (22)
Вернусь к этой важной теме.
В качестве справочно-правовой системы у меня установлен Консульт+, банк КонсультантБухгалтер:ВерсияПроф. А указанное Письмо ЦБ от 11 декабря 2008 г. N 29-1-1-11/7735 находилось в большем пообъему банке – ВерсияПроф. Поэтому я его проморгала.
Благодаря Елене и Владиславу я подала заявку в Консультант+ с просьбой разместить это важное письмо в меньшем по объему банке. Сегодня пришел ответ:
07.08.2009 РИЦ ___
ДЕПАРТАМЕНТ ПЕРСПЕКТИВНЫХ РАЗРАБОТОК В СФЕРЕ НАПОЛНЕНИЯ СИСТЕМ АВТОРСКИМИ МАТЕРИАЛАМИ
Заказ передан в ОЗД в файле 396vl0807_4144.txt
1. Вид документа: ПИСЬМО
2. Принявший орган: ЦБ РФ
3. Дата принятия: 11.12.2 008
4. Номер документа: 29-1-1-11/7735
5. Название (содержание) документа: О порядке ведения кассовых операций обособленными структурными подразделениями организации
6. Дополнительная информация о документе:
7. Иные особенности заказа: Документ находиться в банке ВерсияПроф. Клиенты просят разместить в КонсультантБухгалтер:ВерсияПроф
8. Сведения о заказчике: ООО «NNN» (фио)
12.08.2009
г. N, РИЦ___,
000 «КонсультантПлюс -Инфософт»
Департамент перспективных разработок в сфере наполнения систем авторскими материалами рассмотрел направленный Вами запрос от 07.08.2009.
Документ, о котором Вы упоминаете в запросе, а именно Письмо ФНС России от 19.01.2009 N ШС-22-2/280 «О направлении письма Центрального банка Российской Федерации от 11.12.2008 N 29-1-1-11/7735» (вместе с «Письмом» ЦБ РФ от 11.12.2008 N 29-1-1-11/7735 «О порядке ведения кассовых операций обособленными структурными подразделениями организации») (номер в ИБ 85178) включено в систему «КонсультантБухгалтер:ВерсияПроф» в очередное пополнение.
С уважением, руководитель Департамента перспективных разработок фио
Коллеги, всем спасибо. Хорошее дело сделали.
Интересно решение данной проблемы. У нас сделано чуть по-другому, что б не плодить субсчета на 50 сч. Добавлено субконто в 50.1 сч. — Места хранения.
В ПКО,РКО- добавлен выбор этого субконто.
Но, все равно меняем нумерацю в бух. По доп листы не знала Важная информация! Нужно будет предложить глав буху.
Аналогично (24) … Править ПланСчетов есть моветон.
Максимум, что нужно добавить еще 1 субконто.
У нас добавлено Подразделение, а не МестоХранения
(15) аналогично!! очень нужна такая же обработка для 8.1
может кто видел?
именно такая, так как это лучший вариант!!!
Как заставить работать отчет, выдает такую ошибку. У меня 1С «Бухгалтерский учет ред. 4.5 (7.70.509)»
Ит.ВыполнитьЗапрос(НачЗапроса, КонДата, «» + ?(ПустоеЗначение(ВыбКасса) = 0,ВыбКасса.Счет,»50.1″) + «,50.11»,,,, «День», «СВ»);
{E:1С БАЗЫВОЕНТОРГOAOUTEXTFORMSКАССОВАЯКНИГА.ERT(101)}: Поле агрегатного объекта не обнаружено (Счет)
Интересно решение данной проблемы. У нас сделано чуть по-другому, что б не плодить субсчета на 50 сч. Добавлено субконто в 50.1 сч. — Места хранения.
В ПКО,РКО- добавлен выбор этого субконто.
Но, все равно меняем нумерацю в бух. По доп листы не знала Важная информация! Нужно будет предложить глав буху.
Обработка интересная , описание ещё более увлекательное, но нельзя ли
описание как то сделать более читабельным чтоли, сделать разрыв строк ,
абзацы и прочее…..а то слишком многа буков получается на небольшом участке.
Огромное спасибо за обработку меня сегодня озадачила этой проблемой главбух я не знала с какого края подойти очень интересное решение
Та же самая ошибка((((
Ит.ВыполнитьЗапрос(НачЗапроса, КонДата, «» + ?(ПустоеЗначение(ВыбКасса) = 0,ВыбКасса.Счет,»50.1″) + «,50.11»,,,, «День», «СВ»);
{D:BASE 1CФИНОВАЯ_2012_ТЕСТEXTFORMSKASSOVAYAKNIGA.ERT(101)}: Поле агрегатного объекта не обнаружено (Счет)
Что можно попробовать сделать?
Все хорошо, вот только в 2012 году порядок ведения кассовых операций — новый. И обработку придется доделывать и переделывать снова.
(32) Конечно Вы правы. К сожалению я не программист, обработку сдалал по моему техзаданию в 2008 году наш программист. Для того, чтобы эта обработка работала, он что-то менял в конф 1С 7.7.
Если грамотный специалист посмотрит, то, наверное, он поймет что к чему, решила я и выложила обработку из папки ExtForms в 1С. Да, обработка уже устарела на сегодняшний день. Если общество посчитайте нужным, я могу ее удалить, но думаю, что если она останется, то кому-то может принести пользу, так как я вижу, что многим интересен подход к решению, а имея его, можно поставить задачу.
Не убирайте. Я сейчас передам ее для переделки нашему программисту. Потому что переделать, то,что у Вас есть — это минимум изменений и работы. Когда сделаем — могу выложить то, что получится. Каким образом это можно будет сделать?
Скачала. Выдает ту же самую ошибку — «Ит.ВыполнитьЗапрос(НачЗапроса, КонДата, «» + ?(ПустоеЗначение(ВыбКасса) = 0,ВыбКасса.Счет,»50.1″) + «,50.11»,,,, «День», «СВ»); » Что с ней делать?
Ха решение не доработано, откуда бы в конфигурации взяться справочнику Касса?
Это надо его добавлять + в формы РКО и ПКО реквизит.
Скачал, т.к. надо быстро сделать возможность сдавать кассовые книги по ОП. Или это устарело и неприменимо?
50.1 становится группой, а он в конфах конца 2014 (ОСН >= 543, УСН >= 232) используется в разных документах и отчётах. В ОСН 20 включений, в УСН — 16.
Скачала файл, скопировала в системную папку, все файлы ert программа видит, а файл кассовая книга.ert не видит. (УСН 237)