<?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='\
Уровень!, «снимаю шляпу»
Тут только за картинку с «машиной» надо ставить отдельный плюс!
А за статью — отдельный респект от пользователя БП 2.0!
(1) German,
спасибо
(2) makas, )))
Недолго осталось старушке, максимум через полгода проводим БП 2.0 в последний путь…
(4) maxprofi,
Если 1С не «обрубит обновления» как это было с БП 1.6, тогда имхо еще долго бухи не слезут с БП 2.0
(5) makas,
В 1С хорошо знают такую неудобную привычку бухов, поэтому очень хотят обрубить:
http://www.1c.ru/news/info.jsp?id=16872
«К 2014 году поддержку редакции 2.0 конфигурации «Бухгалтерия предприятия» предполагается прекратить».
Хотя, может быть, и страшилка, поскольку только лишь «предполагается». Возможно, дадут еще годик, чтобы проститься.
За оформление и труд однозначно плюс!
чуть не съел свой «котелок» когда нажимал ОК. Потрясающе!!!!
(6) maxprofi, дадут и больше — франи не успевают свои шняги на уф перевести
Супер!
Поростите, а сделать из 2х объектов 1 — реализвано в типовом функционале?
(10) jonybanchicov, нет, слияние не реализовано. Но обычно в нем и нет необходимости — приняты к учету два объекта по отдельности, так и остаются, бухгалтер не будет париться слиянием, зачем? Разукрупнение же нужно, когда деваться просто некуда — например, сняли и продали навесное оборудование с основного средства, или, скажем, передали в другой филиал через 79 счет. Речь идет исключительно про регламентированный учет, в управленческом, конечно, потребности могут быть самыми разнообразными.
Слияние ОС «просто так» требуется разве что «крупняку», когда начинаются фантазии всяких «методологов» из «отделов внутреннего аудита» по «оптимизации учета». Но у крупняка для этого есть собственные программисты и консультанты 1С. Или франчик поможет за несколько сотен тыров ))
(10) Однако, если очень хочется, можно сделать «модернизацию одного ОС другим»:
1. Списать одно из них с учета документом «Списание ОС».
2. Оприходовать на склад «полученный после демонтажа материал» документом «Оприходование товаров»: Д 10 — К 91.
3. Списать материал на затраты по модернизации «Требованием-накладной»: Д 08.03 — К 10.
4. Провести модернизацию второго ОС документом «Модернизация ОС»: Д 01 — К 08.03.
Если из двух рождается вообще новый объект, а не один присоединяется к другому, то можно списать оба ОС, поскидывать полученное на 08.03 и ввести новый объект документом «Принятие ОС к учету». Получится монтаж нового объекта из «б/у материалов, полученных от демонтажа».
Но здесь нужно быть готовым объяснить налоговой, почему у «нового» объекта срок использования меньше, чем положено. Либо ставить его снова на полный срок, но тогда, соответственно, растянется период амортизации и списание стоимости ОС на затраты. Технически метод есть, а риски пусть берет на себя ГБ.
Вот реальная ситуация:
Было две квартиры с разными кадастровыми номерами и часть подъезда. Всё вместе объединили и получили
новый объект. Старые свидетельства о собственности юстиция изъяла ….
(13) jonybanchicov, реальные действия ГБ в данной реальной ситуации: морду кирпичом, и никаких операций в учете не проводить )) Это не мои фантазии, а результаты консультаций у трех ГБ с 15-25летним опытом.
Суть в чем — ни объединение, ни разукрупнение ОС напрямую законодательством не предусмотрены, и поэтому в дело вступает так называемое профессиональное суждение бухов, методологов, аудиторов. Когда встречаете в их статьях оговорку «по нашему мнению, ля-ля-ля», это вот оно и есть — рассуждения без ссылок на нормативно-правовую базу.
В случае с разукрупнением выбора нет — приходится разделять, поскольку дальше с отдельными кусками объекта производятся какие-то значимые действия (просто так, «чтобы было» в здравом уме никто ничего такого делать не станет).
А насчет объединения ОС, подлежащих госрегистрации (как в вашем случае), есть, например, вот такое профессиональное суждение:
«Относительно государственной регистрации права собственности хотелось бы отметить следующее.
Государственная регистрация является доказательством существования зарегистрированного права собственности на здание, но не является условием для принятия его в качестве основного средства.
ПБУ 6/01 не содержит специального условия о наличии факта государственной регистрации права собственности на объект недвижимости для учета этого объекта только в качестве единого основного средства. Так, например, существуют общеизвестные случаи, когда в бухгалтерском учете числятся несколько основных средств, а свидетельство о праве собственности на эти основные средства оформлено одно. Это, в частности, возможно при учете АЗС, имеющих здание магазина, кафе и т.д.
Иными словами, сама по себе государственная регистрация права собственности на один объект (или на два новых объекта) не влияет на признание актива в качестве нескольких основных средств.»
Брызгалин А.В., Федорова О.С., Харалгина О.Л., Королева М.В., Ильиных Д.А., Ефремова Е.С., Митрофанова И.А., Кондрашова Н.А., Курдяев А.Е. Налог на прибыль: сложные вопросы из практики налогового консультирования // Налоги и финансовое право. 2012. N 8. С. 22 — 26, 37 — 343.
То есть можно не объединять ваши квартиры. Но можно и объединить, прямого запрета нет. Как думаете, что выберет большинство главбухов? ))
Вот и я до создания обработки сделал десятки разукрупнений ОС и ни одного объединения. Это не значит, что оно не нужно вообще никогда и никому. Нужно, но в исчезающе редких случаях по сравнению с разукрупнением — если профсуждение какого-нибудь ГБ настойчиво заставляет ее оформлять операции вместо того, чтобы пить чай с пряниками.
Супер!!! Раньше приходилось делать кучу манипуляций с документами, чтобы разукрупнить ОС.
Интересно, какую такую кучу манипуляций можно было сделать, чтобы ОС разукрупнились?
Я, вот, честно, не знаю такого набора или его последовательности!
Благодарю за такую содержательную публикацию. Очень понравилось.
Только теперь форму ОС-6 переделать осталось, чтобы хоть как то отразить факт Частичной ликвидации.
Нет ли у кого под рукой?
Грандиозно! Респект!
За 25 лет в бух.учете лишь в одной орг. столкнулся с «частичной ликвидацией»( читай разукрупнением ) ОС, и то это связано с тем , что изначально была оприходована ОС( 2-я технологическая линия содержащая 5 реакторов, каждый из которых сам по определению является ОС), В н.в. после N-лет эксплуатации и в связи с изменениями в технологии принимается решение демонтировать один из реакторов, а на его место поставить новый с другими характеристиками. Есть проект,смета и т.д. и т.п. Срок полной амортизации 2-ой ТЛ еще не закончился. Вопрос к автору.
Что бы Вы могли порекомендовать ГБ для правильного отражения в УПП возникшей ситуации ?
(20) Lukich66,
Разукрупнение ОС часто встречается в отраслях, где ОС имеют размытые границы, и невозможно однозначно определить «комплекс конструктивно сочлененных компонентов…» и так далее по классическому определению объекта ОС. Например, я много работал с телекоммуникационными операторами, там бухи пускаются во все тяжкие, кто во что горазд. Кто-то принимает каждую железку как отдельный объект, кто формирует укрупненные объекты типа «Узел связи», постоянно их модернизируя новыми железками по ходу развития сети (и тут разукрупнение частый гость — сняли маршрутизатор с узла и продали клиенту как б/у для организации связи с его стороны, или просто списали по моральному устареванию). А одни девчата вообще реализовали крайний случай в бухучете — единственный объект ОС «Городская сеть передачи данных» стоимостью несколько сотен млн руб.
Или вот лет 8-9 назад была опупея с регистрацией сооружений кабельной канализации как объектов недвижимости — сотнями отдирали их от укрупненных объектов «Линия связи». Для бухов тотальный гемор, а для 1Сников дополнительная икра на хлеб с маслом.
maxprofi , Вы супер! Описание впечаляет! Скачала обработку, буду делать разукрупнение по ней.
(22) maxprofi, делаю по Вашей обрабоке «Разукрупнение ОС». В ведомости по амортизации для ОС, который разукрупняю не показана сумма уменьшения. Хотя а обортке по счету 01.01 показан Кредит суммы. Это верно? Так и должно быть?
У меня ухгалтерия предприятия, редакция 2.0 (2.0.64.23).
На ИТС смотрела как там делали частичную ликвидацию, там показана сумма уменьшения.
(23) Спасибоси ))
(24) Да, по задумке программистов 1С так и должно быть… В БП 2.0 в отчете «Ведомость амортизации ОС» с какого-то перепуга гвоздями прибиты условия типа «ГДЕ Обороты.Регистратор ССЫЛКА Документ.ПринятиеКУчетуОС» и т.п., в некоторых местах обороты по регистратору Документ.ОперацияБух так же сознательно исключаются в тексте запроса.
В статье на ИТС пример приводится для БП 3.0, в этой конфигурации 1С опомнилась и по видам регистраторов уже ничего не фильтрует, оборот по кредиту счета 01 — значит уменьшение стоимости без всяких экивоков.
Огромная работа, благодарю!
Отличная вещь! Есть пара вопросов/предложений — в БП 3.0.41.56, вылезла ошибка в строке
— закомментарил, т.к. отладчик показывает, что ЗаполнениеДвижений в операции сейчас отсутствет;
стал «разукрупнять» ОС принятое к учету в 2008 году, сразу закомментарил проверку на запись регистров в закрытом периоде, т.к. кроме этих самых регистров ничего в тех периодах не меняется, но записать сведения об ОС туда нужно, ради этого отменять, потом устанавливать запрет, ИМХО, ни к чему, в большинстве случаях запрет будет стоять, но ни на какие последовательности запись регистров сведений по ОС не повлияет, поэтому сделал так:
Показать
Может я не прав, но без этих изменений записать операцию не удалось.
А так — плюс однозначно — «пилить» ОС время от времени приходится, метод тот же, но руками — долго и муторно, тут дёшево и сердито 🙂
Да, забыл, — оптом заменил все
на
, а то у бухгалтера матерное слово «модальных» в сочетании с «запрещено» нервный тик вызывает, но это так, мелочь)))))))))))))))
Спасибо, обработка отличнейшая!
Подскажите, пожалуйста, УПП 1.3 «Ведомость амортизации за период» не отражается амортизация за последний месяц (месяц списания).
Т.е., например:
амортизация на начало периода = 100 руб
амортизация за период = -100
амортизация на конец периода = 0
Но здесь нет 10 руб (амортизация, которая начислена в текущем месяце)
Это правильно?
Просто потрясающе!!!!
Спасибо за обработку, работает отлично как в БП 2 так и в БП 3.
Просто супер пупер обработка!
Про объедининие: бывают люди покупают два земельных участка, и объединяют их в один. Поскольку аммортизации в таких случаях нет, делаем просто Дт0804 Кт 01
а потом модернизация ОС
в случае зданий методика описана тутhttp://www.consulting.ites.ru/publications/publ0022.shtml . Если реализуете, не грех и продавать новую крутую обработку за небольшие денежки
Вы — просто ГЕНИЙ ! Давно не встречала такой качественной работы. Обработку обязательно скачаю.
Файл скачала, проверила. Бухгалтерия 3.0.44.188. При проводке операции выдается сообщение об ошибке «Поле объекта не обнаружено(ЗаполнениеДвижений)». Жаль. Очень хорошая обработка, нужная. Как можно исправить????
(33)Вы исправили? Работает у Вас эта обработка в БП 3.0.44.188 ?
В БП 3.0.44.199 тоже при сохранении ошибка
«Не удалось сохранить данные движения документа » Поле объекта не обнаружено(ЗаполнениеДвижений)».
Как исправить?
Извините что подымаю старую тему, но что хочет от меня обработка во время проведения.
Амортизация в этом месяце уже начислялась для основного средства Нежилое помещение 40 лет Октября 62 стр. 4 пом. 75 пл. 13916,9 кв. м . 1 этаж (000000457), инв. № 0000378.
Укажите эти данные в документах принятия к учету или изменения параметров начисления амортизации (Меню «ОС»,»НМА»).
?
заранее благодарю за ответ
В БП 3.0 не работало. Поправил, теперь работает. Ну, то есть в БП 3.0 работает, как в остальных конфигурациях я не знаю.
Автор, куда скинуть изменения?
(37) Суда скинь изменения у меня ошибка ЗаполнениеДвижений не обнаружено
(38)
В последней версии БП 3.0 программа перестала работать. Кто знает как исправить?
Подскажите пожалуйста. Задействуется ли 91 счёт при разукрепнении ?? БП 3.0. Необходимо разделить ОС для последующей продажи его части.
После обновления БП3.0 обработка перестала работать пишет не обнаружен метод объекта ПодготовитьТаблицуАмортизацияОС. Как исправить?
Добрый вечер! Уважаемый автор, будет ли обновление у вашей обработки? очень надо земельный участок поделить.