<?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='\
Не советовал бы так делать с документами уплаты налогов с ФОТ(Списания с р/с). Дело в том, что в БП 3.0 они делают движение по регистру сведений РасчетыСФондамиПоСтраховымВзносам(отражают уплату). Уплаты по этому регистру обычно переносятся Операциями БУ и НУ(хотя иногда полностью не переносятся и приходится все же перепроводить списания и убирать галочку ручной корректировки). Таким образом вы просто задвоите записи в этом регистре. Для того чтобы принять верное решение нужно сформировать универсальный отчет по этому регистру и сравнить ее с таким же отчетом в БП 2.0
Своевременно!
(1) Регистр «РасчетыСФондамиПоСтраховымВзносам» отстутствует в БП 2.0. Все движения по подобным регистрам удаляются вместе с документами на шаге «Удаляем ненужные документы». ИМХО, эти документы (и регистры) нужны только для сдачи регламентированной отчетности, которую на самом деле лучше сдавать из ЗУП.
(4) «Не подходит» — не совсем так на самом деле. Вам просто нужно придумать, что делать с обменами. У меня тоже есть такие базы. Я еще не решил, что с ними делать.
спасибо, уместность многа буков, полезно весьма
А у меня другая проблема. У меня есть отраслевое решение на основе БП 2.0. Что радует это то что всю отраслевую часть организация не использует. Используется только стандартные бух документы и тд.
Ну и есть пара документов приписанных… но в них нет необходимости. Их можно просто перенести в бух операцию.
Вот как бы соскочить с отраслевухи на типовую БП 3.0…. 🙁
(7) TODD22, А если на отраслевую сначала загрузить cf-ник соответствующего релиза БП2.0?
(0) Смущает отказ от доработок, не удалять же добавленные регистры? И насчет дополнительных реквизитов, насколько понимаю, это аналог свойств и категорий, а значит по ним нет возможности вести ни суммовой, ни количественный учет.
Спасибо ! Познавательно.
Спасибо, возьмем на заметку.
Еще наблюдение: при переходе не переносятся наименования Дополнительных сведений справочников и документов (в БП 3.0 это Наборы дополнительных реквизитов и сведений — Дополнительные сведения)
Слава 1С! Для тех, кто до сих пор на 1С7.7 — теперь на новую БП3.0 можно переходить вечно)) сделали синхронизацию документов 1С7.7-1С8
Синхронный учет в 1С:Бухгалтерии 7.7 и 1С:Бухгалтерии 8
Для упрощения перехода с 1С:Бухгалтерии 7.7 на 1С:Бухгалтерию 8 поддерживается возможность синхронного ведения учета в 1С:Бухгалтерии 7.7 и 1С:Бухгалтерии 8. Это позволяет в в течении переходного периода вести учет в 1С:Бухгалтерии 7.7 и и видеть, как введенные данные отражаются в 1С:Бухгалтерии 8.
Может я туплю, но зачем нужна вся эта перенумерация, по которую так много написано?
(13) Чтобы имитировать ситуацию: учет ведется с начала года. Да можно, как предлагает 1С, создать документ (элемент справочника) со следующим номером с нужным префиксом, но:
* не всегда это работает;
* думаете, пользователи будут этим заниматься?
Я для себя решил: лучше переименовать все махом и не иметь потом геморроя с пользователями.
Хорошая статья.
Ну кратко опишу свой опыт перевода контор с БП 2.0 на 3.0. Все конфы, которые я переводил, были на замке. НО. Было просто мега-тонны старых обраток, внешних отчетов, каких-то еще приблуд, которые адаптировались мной еще со времен 1.5. Вся сложность (лично у меня) была не технике перевода с БП 2.0 на 3.0, а именно переписи всего этого чудесного вороха старья на БСП. Чтоб оценить объемы — приблизительно где-то за месяц усердного кодинья, я смог все старое, обернуть в БСП. Также отказался от SQL-DMO обменов, которые были мною написаны ранее, пожертвовав мега-быстротой, в пользу классических правил конвертаций. Адаптация типовых правил, под специфику, в неторопливом режиме заняла где-то недели три. В итоге, последнюю контору перевел в мае сего года. Так что, почти 5 месяцев мы уже в БП 3.0. Недовольных нет. Наоборот. Но, в свете, вроде как 3.1 на 8.3, наверное, (хотя хз) стоит погодить, если у вас переход планируется УЖЕ СЕЙЧАС. Кажется, что два раза привыкать к управляемому интерфейсу, и такси — сейчас, не особо гут. Поэтому, наверное, если бы перевод был прямо сейчас, то я бы подождал 3.1.
Для программистов могу сказать: без знания БСП нечего туда и лезть. Стоит сначала досконально разобраться с нужными подсистемами, прежде чем перетаскивать ваш ворохъ вековой в этот новый огород 🙂
(15) Новиков, да уж, на БСП времени не хватает…
(15) А что Вы сделали с регламентированными отчетами (см. мою статью в «Другие публикации автора»)?
(17) статью прочитал. Ни с чем таким не сталкивался. Т.е. отвечая на Ваш вопрос — ничего не делал.
(12) 3.14159, только что на пробном переходе вляпался 🙁 Но у меня не только названия не перенеслись, но и привязка свойства к договору, т.е. его видно, но при двойном клике оно пропадает и надо перевыбирать, а без этого невозможно это свойство использовать в отборе в стандартных отчетах, еще раз 🙁
Слава богу, что мы еще на семерке
Что-то не понял… как они будут сконвертированы в процессе обновления, если мы их удалим до обновления?
так и не понял, чем знание БСП кардинально помогает в переходе 2.0 — 3.0
(22) vano-ekt, помогает грамотно написать внешние печ. формы и внешние обработки без изменения конфигурации.
(23)именно БСП в этом помогает?)
(24) vano-ekt, конечно помогает.
Без знания подсистем БСП задача сводится к:
1. Как переписать уже имеющуюся функциональность под БП 3.0
2. КАК это подключить к типовому функционалу
Со знанием соовт. подсистема из вышеописанных пунктов убирается п.2.
В случае обменов, без знания онлайн-обменов БСп, на мой взгляд, даже рыпаться не стоит что-то делать. Хотя на 1с-лансере, студенты и пенсионеры за 200 р. в час готовы переписать в хламину обмен между УТ 11.1 и БП 3.0 🙂
Очень понравилась статья, хотя и не было необходимости в переходе 2.0 на 3.0. Спасибо!
да, неплохая статья, спасибо автору!
(21) Если мы их не удалим, они будут сконвертированы в бухгалтерские справки. Чтобы не засорять базу, стоит их удалить перед переходом на БП 3.0.
А зачем перенумеровывать справочники и документы? Новый номер не может быть присвоен автоматически, если есть номера старых образцоы? Или будет нумерация для новых элементов идти с единицы, не обращая внимания на струю? Или просто для эстетического восприятия?
Хорошая статья, так что однозначно +
(29) Для эстетического (хочется единообразия в базе).
Спасибо! Будет полезно
полезная статья
Актуальная статья, в силу того, что сейчас уже начинаются переходы с 2.0 на 3.0
Спасибо большое! Скоро будем пробовать!!!
А вот интересно если такое же попробовать провернуть с базой не 2.0, а 1.6…
Сделали по Вашей схеме, получилось. Спасибо!
(36) Не прокатит
(38) — хорошая и своевременная статья, спасибо!
Но абсолютно не понятно что содержится в файлах, стоит ли их качать…
Можно ли как то развернуто ответить на этот вопрос, а лучше описание разработки поправить
(40) В этом ничего страшного нет. Все равно теперь настройки пользователя хранятся в другом месте
(41) по ходу в юзерские настройки кто-то засунул что-то еще? и это теперь потеряется… блин, надо искать, что там еще может быть
Автору я так понимаю не до описания обработок. Не поленился, скачал, — выкладываю описание архива с обработками:
1)Перенумеровываем документы
Документы. Перенумеровать
2)Перенумеровываем справочники
Справочники. Перенумеровать
3)Подготавливаем список пользователей
Пользователи_Переименовать
4)Удаляем ненужные документы
-УчетНДФЛиЕСН_УдалитьДокументы_2_0
5)Чистим базу
Хозрасчетный. Почистить
Хозрасчетный_ИсправитьПодразделенияИВалюту
Справочники. Почистить
Справочник. Физические лица
Справочник. Сотрудники
Справочник. Банковские счета
PoiskIZamenaDublirujuschihsjaElementov+
Чтобы у других людей не возникало вопроса, а что там в архиве обработок.
Прочитал, учту, как раз собираюсь переходить. Конфа не менена, все во внешних дороботках, надеюсь проблем не будет.
Спасибо! Очень пригодился материал.
ну лучше тянуть до последнего 🙂 чтобы меньше багов ловить при ДобровольноПринудительных переходах
Хорошая статья. Я бы еще добавил, что начиная с релиза 3.0.26.11 появился дистрибутив, который так и называется «Дистрибутив обновления для перехода с редакции 2.0». Вот с него то и нужно осуществлять переход с редакции 2.0
Добрый день! Спасибо за статью. Очень актуально.
Спасибо большое, очень пригодится, а нет чего-нибудь похожего про измененные конфигурации (добавлены свои документы) и есть УИРБД.
(49) Если у Вас распределенка, я бы порекомендовал удалить периферийные узлы, обновить ЦБ, а затем снова создать узлы РБД
Спасибо, познавательно. Совсем скоро будем переходить.
Молодец, все очень подробно. Большое спасибо
Хотел поставить плюс. но так и не смог разобраться как это сделать:(
Спасибо.Хорошая познавательная статья. Совсем скоро ею воспользуюсь.
Статья очень полезная, сам прошел через это, советую не скоро пользоваться данной статьей, БП 3.0 мягко говоря сырая, а точнее просто ужас. В ней просто не возможно нормально работать, печатные формы живут своей жизнью, постоянные траблы с обновлениями, стабильность работы на SQL не поддается никакой критике, одна база может засрать всю память на серваке. Переход стоит производить после снятия с поддержки БП 2.0. Рановато ее дали пользователям.
Очень актуально спасибо!
Буду использовать.
(55) Соглашусь только с тем, что на серваке rphost, работающий для БП 3.0, жрет порядочное количество памяти. По остальным претензиям не согласен.
При переходе на 3.0 в настройках параметрах учета на закладке сотрудники и зарплата устанавливается признак что учет ведется в «В этой программе», хотя в 2.0 он велся во внешней…
Это всегда такая ошибка?
(58) Не встречал, но мне и не попадались базы, где учет з/п велся в БП.
(55) amatisol, пока что обязательный переход откладывается до 2015 года (1С БП 2.0 будет поддерживать), так что можно немного расслабиться.
Други, у меня не показываются все комменты. Поэтому не могу резюмировать по данной теме. Вопрос к знатокам: переходить на БП 3.0 или все-таки подождать до 2015 года?
(61) Переходить. Это как у зубного: пока сидишь и ждешь своей очереди — страшно…
Плюсанул бы да не знаю как
(63) Большая красная звезда возле Избранное.
Тоже перевел некоторые конторы на 3.0, те кто перешли, через неделю сказали да необычно, но попривыкнув стало намного удобней
При настройке РБД по организациям данные в узел отбираются из справочников по непонятным правилам. При создании начального образа, казалось бы, должны выгрузиться все контрагенты. Но выгружаются не все.
Обработка «Перенумеровываем документы» не работает: то недостаточно параметров у Сформировать, то функция не определена.
здорово! спасибо большое — перевожу по вашей инструкции!
У меня, ни одна обработка связанная с перенумеровыванием на релизе 3.0.30.12 и платформе 8.3.4.437 не работают. Ошибка такая: Поле объекта недоступно для записи (этот объект) .
Зачем?
(70) Чтобы поставить на поддержку полностью
Здрасти!
У меня при переходе на 3,0 возникли вот такие ошибки:
Справочник.ВидыОтправляемыхДокументов. Старые предопределенные данные будут удалены, возможно образование зависших ссылок на предопределенные данные
Справочник.ГруппыПользователей. Старые предопределенные данные будут удалены, возможно образование зависших ссылок на предопределенные данные
Удалены группы в справочнике: Сотрудники
Код справочника стал неуникальным: Сотрудники (100)
Справочник.СтраныМира. Старые предопределенные данные будут удалены, возможно образование зависших ссылок на предопределенные данные
Справочник.УдалитьВычетыНДФЛ. Старые предопределенные данные будут удалены, возможно образование зависших ссылок на предопределенные данные
Справочник.УдалитьДоходыПоСтраховымВзносам. Старые предопределенные данные будут удалены, возможно образование зависших ссылок на предопределенные данные
Справочник.УдалитьТерриториальныеУсловия. Старые предопределенные данные будут удалены, возможно образование зависших ссылок на предопределенные данные
Код справочника стал неуникальным: УдалитьТерриториальныеУсловия (МКС)
Код справочника стал неуникальным: УдалитьТерриториальныеУсловия (РКС)
ПланВидовХарактеристик.ВидыСубконтоХозрасчетные. Старые предопределенные данные будут удалены, возможно образование зависших ссылок на предопределенные данные
ПланВидовХарактеристик.УдалитьНазначенияСвойствКатегорийОбъектов. Старые предопределенные данные будут удалены, возможно образование зависших ссылок на предопределенные данные
Код вида характеристики стал неуникальным:УдалитьНазначенияСвойствКатегорийОбъектов (00000000121)
Код вида характеристики стал неуникальным:УдалитьНазначенияСвойствКатегорийОбъектов (00000000122)
стоит ли на них обращать внимание?
Спасибо!
(72) Некритичные ошибки.
Хорошая статья. Спасибо за труд! 🙂
Добрый день!
А верно я понимаю, что нет механизма для переноса данных из Бух.2.0 в Бух 3.0? На руках имею базу 2.0 за несколько лет, с накопленным «хламом». Бухгалтерия ратует за то, чтобы создать новую чистую базу 3.0, и туда перетащить остатки и используемые справочники. Получается, есть только один путь: обновить имеющуюся базу с 2.0 на 3.0 (как предлагает автор статьи), а потом уже полученную базу 3.0 со всем «хламом» — сворачивать, и там уже делать закрытие базы? (кстати, как оно делается в 3.0, не нашел с полтычка). Всё верно понимаю, это единственный путь, есть только обновление, а переноса нет?
Обработка перенумерации документов не работает
А есть какие то проблемы при переходе на 3.0, если в документах 2.0 были внесены ручные корректировки движений?
(77) Вроде бы нет, все останется как было.
(78) спасибо за оперативный ответ.
мне пригодилась инфа о предварительном обновлении БП2 до последней версии.
Обработка перенумерации документов не работает (2)
(81) Я знаю. Во всех обработках нужно в тексте обработки заменить имя переменной «ЭтотОбъект» на любое другое не зарезервированное слово. Что касается обработки перенумерации, то эту строчку можно закомментировать.
На самом деле нужно начать с того, что эта статья устарела. Нужно переписывать и статью и обработки.
Материалы этой статьи ПРОВЕРИМ на практике. 2.0 уже всем надоела
А вот кто бы мне объяснил смысл перехода на 3 редакцию…
В 2 редакции уже практически все подводные камни изучены, интерфейс привычный и на мой взгляд более дружелюбный, да и вообще зачем??!! Если ПРИНЦИП УЧЁТА НЕ ПОМЕНЯЛСЯ!!!
Ради свистелок-перделок? Дык меня результат больше интересует…
(84) Вы сейчас про чей переход спрашиваете? Про переход фирмы 1С от развития БП 2.0 к развитию БП 3.0 или про переход конечного клиента с БП 2.0 на БП 3.0?
как раз грядет перевод — потестим в 2019