Обновление конфигураций 1С:Предприятия 8. Прыжок через 20 версий




Принцип обмена данными из 1С с сайтом (на MySQL) и выдачи (публикации) этих данных по запросу.
PHP-Скрипт автоматической загрузки данных из файла данных в формате CSV в базу данных сайта работающего на WordPress.

В продолжение моей темы: 1С:Альфа-Авто Автосалон Автосервис: обмен с сайтом.
С помощью данного скрипта можно загружать в автоматическом режиме, по расписанию, данные сервисных книжек (ремонтов авто) из 1С:Альфа-Авто Автосалон Автосервис.
Также можно загружать данные в ручном режиме: для этого делается скрытая страница, где размещается специальная кнопка.
Комментарии размещенные внутри скрипта разъяснят логику и порядок действия.
Комментарии с "/////    echo" использовались для отладки.
Дополнительно создана таблица для журналирования результатов загрузки данных.
Скрипт включает в себя защиту от SQL инъекций (думаю безопасность соблюдена в полной мере).
В кратце:
1. Пишется скрипт, который запускает этот.
2. Создается регламентное задание в WordPress, по которому запускается скрипт из п.1. 
3. Этот скрипт осуществляет проверку на существование файла обмена в папке.
4. Если данные не новые, загрузка не производится.
5. Если данные новые, очищается таблица сервисных книжек.
6. Загружаются новые данные.

Собственно сам скрипт:

<?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='\

98 Comments

  1. poppy

    Есть и другая цепочка:

    1.5.10.3

    1.5.12.1

    1.5.13.6

    1.5.14.4

    1.5.15.3

    1.5.16.3

    1.5.17.3

    1.5.20.2

    1.5.22.2

    1.6.9.4

    1.6.11.7

    11 обновлений.

    Reply
  2. alexk-is

    (1) Тоже вариант. Только не 1.5.22.2, а 1.5.22.3. Т.к. в 1.5.22.2 были проблемы и на диск ИТС пошла версия 1.5.22.3. При этом обновления с 1.5.22.2 на 1.5.22.3 нет.

    Главное, что в статье показан общий принцип по которому разработчики фирмы 1С рекомендуют проводить обновления.

    Reply
  3. alexcne

    Я пользуюсь СОВЕРШЕННО другим методом. На партнерском ИТС-е есть не только пакеты обновлений (с cfu-файлами), но и полные комплекты поставки (с cf-файлами). Тогда цепочка обновлений выглядит так:

    1.5.10.3 — 1.6.11.7 (из cf-файла).

    Всё.

    Reply
  4. pool

    (3) да ты крут!!! и конфигурация поставщика пусть останется 1.5.10.3. Нафик ее вобще обновлять

    Reply
  5. arenatg

    я солидарен с alexcne, а сменить конфигурацию поставщика легко

    Reply
  6. Yexel

    (5) А как можно изменить конфигурацию поставщика?

    Reply
  7. arenatg

    Для сметы конфигурации поставщика достаточно снять с поддержки и объединить с другой конфигурацией с постановкой на поддержку (соответствующий вопрос будет задан системой), при этом в основной конфигурации можно ничего не изменять, если снять все флажки при объединении.

    Reply
  8. alexk-is

    (3) (5) Дополнил статью

    Reply
  9. alexcne

    (4) С чего вы вдруг взяли, что конфигурация поставщика останется 1.5.10.3? Так произойдет, если обновлять ее через «Конфигурация»-«Сравнить, объединить с конфигурацией из файла…». Кто ж так обновляет релиз конфы? ПРАВИЛЬНО будет обновить через пункт меню «Конфигурация»-«Поддержка»-«Обновить конфигурацию», и там выбрать нужный cf-файл. Кстати, вы никогда не задумывались, почему фильтр в выборе файла обновления задан как «*.cf, *.cfu ? Именно для таких случаев. Так что, (7), ничего не надо снимать с поддержки и снова устанавливать на поддержку. Не создавайте себе лишней головной боли [плавно переходящей в геморрой ;)].

    Reply
  10. bobaG

    пасиба,полезная инфа

    Reply
  11. poppy

    (2)

    Конечно, 1.5.22.3. Релиз 1.5.22.2 уже проблематично достать…

    Имхается мне что автор слегка перемудрил. Не скажу что про обновление написано неправильно. Если сделать как написано в статье, то обновление будет выполнено успешно.

    Однако, из-за страшилок, которыми нас пугают, обновление придется делать долго и дорого.

    В типовых конфигурциях есть ограничения на порядок устанавливаемых релизов, однако они не настолько строгие, как кажется автору.

    Например:

    — УТ 10.3 можно обновлять с релиза не младше 10.2.13;

    — УПП 1.2 можно обновлят с релиза не младше 1.1.9;

    — ЗУП 2.5 можно обновлять с любого релиза редакции 2.1;

    — БП 1.6 — я не заметила ограничений.

    Reply
  12. Fuego

    Статейка кстати подвернулась! +1 Завтра/послезавтра моему пощнику предстоит перевести БП аж с 1.5.12.1. Только вот как лучше всё-таки сделать? цф сразу новый применить, или кучу цфу с дисков собирать?

    Reply
  13. Erne100

    Если следовать рекомендациям 1С, то с почти всех тестовых обновление невозможно (их нет в списке допустимых ,а они не видят как доступное обновление даже официальный,следующий заними по номеру релиз).

    ИМХО страшилки всё это.

    Reply
  14. alexk-is

    (12) Есть мнение, что разработчики фирмы 1С просто воду мутят — 11 пост. Я проверял обновление БП, и как оказалось на демонстрационной версии обновление проходит без «проблем». (Программных ошибок небыло. Сохранение данных не проверял.) При обновлении на реальных базах перейти сразу на последний релиз почему-то не получается. Даже для перехода с версии на версию иногда приходится изобретать обходные пути и разрабатывать поэтапное обновление.

    Reply
  15. poppy

    (14)

    > Есть мнение, что разработчики фирмы 1С просто воду мутят — 11 пост.

    Думаю, что причины появления формата файлов cfu в платформе и использование его в типовых конфигурациях совсем не те, о которых мы предполагаем…

    Reply
  16. O-Planet

    (15) Очевидно, причина ТОЛЬКО в размере файла + подсадить на ИТС. Сейчас часто пересылаю обновление в другой город. Если через cf, то 100 мб, через cfu — 12 мб.

    Reply
  17. O-Planet

    Кстати, кто знает, почкму cf выгрузить конфигурацию в файл и cf при формировании файлов поставки в разы отличаются по размеру?

    Reply
  18. poppy

    (17)

    В первом файле две конфигурации — Поставщика и Основная. Во втором — только Основная.

    Reply
  19. qwert1

    Друзья, помогите пожалуйста, мне нужно скачать 1С:Бухгалтерии 8, версия 1.0.17.2/1.6.11.7. Помогите кто чем может. Заранее благодарю.

    Reply
  20. alexk-is
  21. ma_rousya

    Вопрос. Обновила конфигурацию, успешно. Загрузила программу в режиме «1с:предприятие» — информационная база также успешно обновилась. Притащили для работы базу данных, после ее установки версия программы снова стала старой. Это как-то связано с тем что база данных сохранялась в старой версии? или у меня руки совсем кривые:((

    заранее благодарна!

    Reply
  22. ma_rousya

    PS: конфигурация 1с:базовая, восьмерка

    Reply
  23. alexk-is

    Не очень понятен вопрос. Хотелось бы уточнить…

    Куда «притащили» базу данных? И каким образом она связана со «старой версией»?

    Reply
  24. Арчибальд

    (11) А я заметил :(((

    Reply
  25. ma_rousya

    to alexk-is: да, я поторопилась, поясняю: я приходящий бухгалтер, у меня есть своя программа, и точно такая же в офисе. Мне приносят документы, и инф. базу, я обрабатываю, и сдаю их обратно — в офисе база загружается, и все счастливы. Вот , пока я не решила конфигурацию обновить, пора уже давно; а в офисе она соответственно не обновлена , и когда мне в очередной раз принесли инф. базу и я ее загрузила в свою программу — конфигурация (моя) снова стала старой, такой же как в офисе (ну или такой же как у меня до обновления). Вот я и расстраиваюсь, что делать не знаю: то ли просто обновить конфигурацию и в офисе тоже, или дело вообще не в этом, просто совпадение. А то прошла многоступенчатое обновление через несколько версий, как у вас в статье описано — и все зря! Обидно! 🙂

    Reply
  26. alexk-is

    (25) На сколько я понимаю под загрузкой базы подразумевается загрузка файла .dt. Если это так, то у меня создается впечатление, что был пропущен пункт «в офисе база загружается».

    Reply
  27. ma_rousya

    (26) да-да, этот файл.

    «Если это так, то у меня создается впечатление, что был пропущен пункт «в офисе база загружается».» — а вот тут уже я не поняла…??

    Reply
  28. alexk-is

    (27) Ну, тут как раз все просто. Вы в офис базу принесли, а в офисе вашу базу не загрузили…

    Reply
  29. ma_rousya

    (28) хм…проверю

    спасибо за уделенное время и консультации!:)

    Reply
  30. poppy

    (24) Поделись замечаниями…

    Reply
  31. Арчибальд

    (30) Собственно, до 1.6 я не добрался. Мне не пришел диск ИТС за январь 2008, (1.5.21). Соответственно, февраль 2008 (1.5.22) уже не поставился…

    Reply
  32. Rjysr

    Важное замечание — при обновлении следует учитывать версию платформы 8,

    если она будет меньше, чем рекомендуют в очередной поставке обновления, то будут сбои при попытки обновить базу данных !!!

    непутать с конфигурацией: есть конфигурации, а есть база данных — это разные вещи, и они могут работать с разными версиями конфигурации.

    Допустим, мы обновили конфигурацию, далее конфигуратор спрошивает про обновление базы данных, при возникновении сбоя, база данных не обновиться !!!

    Чтобы запустить обновление базы данных иногда требуеться запускать режим «1С:Предприятие» из конфигуратора

    1.Для тех кто еще не знает зачем нужны эти промежуточные обновления: — они нужны потому, что в поставке очередного обновления включает только ИЗМЕНЕНИЯ В КОНФИГУРАЦИИ, А НЕ ВСЯ КОНФИГУРАЦИЯ (как в 7.7).

    и поэтому …. что перепрыгнуть через обновления, на последный релиз, нужно

    2. файл ПОЛНОЙ конфигурации.

    — реализуеться путем выбора пункта «Сохранить конфигурацию в файл…», из базы 1с с последним релизов….

    теперь у вас есть файл с полной конфигурацией

    -Вам только остаеться загрузить данный файл с помощью пункта «Загрузить конфигурацию из файла…» в той базе которую требуеться обновить

    проверял неоднократно, на разных конфигурация бух, зар, торг, базовые v8._

    при включени режима «1С:Предприятие», запускается обработка по всем промежуточным обновлениям

    Reply
  33. tr011_tmn

    (3) (5) (9) в корне не согласен с обновлением через *.cf, УПП рабочую базу таким способом обновить не удасться (благо опыт еще только вчерашний)

    Цепочка выглядела так:

    1.2.19.1 — 1.2.27.1

    Результат:

    Запуск из конфигуратора в режиме приложение выдает запрос на запуск обработок после обновления, который завершается ошибкой, номер конфигурации сменился, но база данных не работоспособна, т.к. обработки присутствуют только с версии 1.2.26.1 а все что были ранее отсутствуют.

    Вывод, обновление через *.cf не есть панацея, хотя каждый случай следует рассматривать отдельно

    Reply
  34. alexk-is

    (34) На УПП 1.2.27.1 можно перейти с 1.2.23.х и выше, для этого все нужное есть. При переходе с версии 1.2.26.1 выполняется заполнение некоторых данных в основном по объектам связанных с заработной платой.

    Reply
  35. alexk-is

    (32) «Загрузить конфигурацию из файла…» в режиме РИБ приведет к значительному росту объема файлов обмена данными. При сравнении/объединении и использовании файлов *.cfu есть вероятность того, что объем файлов обмена данными будет значительно меньше.

    Что значит «файл ПОЛНОЙ конфигурации.»? «Сохранить конфигурацию в файл…» сохраняет в файл 2 конфигурации: Основная конфигурация + Конфигурация поставщика (если конфигурация не снята с поддержки).

    Reply
  36. I_G_O_R

    (36) ага!! не знаете чем отличается обновление через *.cfu и *.cf ???

    цитирую из большой желтой книжки(проф. разработка …):


    Объем файла обновления меньше, чем объем файла поставки, но процесс обновления с помощью файла обновления не может выполняться быстрее, чем с помощью файла поставки.

    Дело в том, что при использовании файла обновления сначала, на основе старой версии конфигурации поставщика и файла обновления, создается новая версия конфигурации поставщика. После этого выполняется сравнение/объединение текущей конфигурации с новой конфигурацией поставщика.
    Reply
  37. Merlin12042009

    Как сделать собственные cfu?…можна на примере измененной 24…изменения перенести в 27…жду ответа с большим нетерпением, не надо все….что не попадет, проверю, поправлю.

    Reply
  38. alexk-is

    (38) Как я понимаю, вопрос уже решен?

    Reply
  39. Merlin12042009

    нет, не решен 🙁

    Reply
  40. Merlin12042009

    мучаюсь …

    Reply
  41. alexk-is

    (41) Даже не знаю чем помочь… Что не получается?

    Reply
  42. Merlin12042009

    В 24 у меня получилось создать файл сfu, но там уже были внесены изменения в конфигурацию нестандартные, а вот при натягивании до 27, они потерялись.Так как же перенести?

    Reply
  43. Merlin12042009

    я еще раз прочитала и поняла, что в табличную часть нужно добавить все тот же файл, который сохранен ранее, 24-ой конфы…

    Reply
  44. alexk-is

    (43) Понятно. Для получения cfu от «поставшика» для обновления с 24 на 27 необходимо при подготовке использовать конфигурации поставщика. Типовые, без возможности изменения. Их проще получить и труднее ошибиться. Получить cf можно из дистрибутивов или выполнив обновление через поддержку.

    Reply
  45. Merlin12042009

    Файл cfu получился, но теперь при обновлении он выдает табличку, в которой написано, что файл содержит обновления для 24, а не для текущей 27, внутри которой я делала этот файл, как это обойти? все делаю через поддержку 🙁

    Reply
  46. Merlin12042009

    абидно очень, может как-то поменять можно в cfu 24.2 на 27.01?

    Reply
  47. Merlin12042009

    все равно, я вам очень благодарна, потому как после посещения вебинара Чистова, где он рассказывал о собственных конфигурациях и изменении номера релиза и создании комплектов обновления, я поняла, что это как-то можно применить и к стандартным, с не очень измененным кодом, и сегодня случайно нашла вас, да еще к тому же вы рядом!!!!!!!!!!!!….УРА!!!!!!! СПАСИБО.

    Reply
  48. alexk-is

    (48) Начнем с начала. Для того чтобы все получилось нам нужно базу с типовой конфигурацией поставщика 27, конфигурацию поставщика 24 и копию рабочей базы с измененной конфигурацией 24. В типовой 27 создаем файл cfu 24-27, используя файл cf 24. С помощью cfu 24-27 обновляем копию рабочей базы через поддержку.

    Reply
  49. Merlin12042009

    да…где ж мне взять конфигурации ПОСТАВЩИКА?…у меня только cfu. зачем мне конфа поставщика чистая 24-ая?

    1.Делаю сf24 с изменениями

    2.В чистой 27 делаю cfu по отношению к ней.

    3.В чистой????(или можно в рабочей) 24 делаю обновление на 27 через это cfu

    ОТВЕТЬТЕ мне пожалуйста

    Reply
  50. Merlin12042009

    все найду….но зачем конфигурация чистая 24-ая?

    Reply
  51. alexk-is

    (50) Видимо для начала я выбрал не ту точку отсчета. По пунктам в статье.

    1. Из копии рабочей базы через поддержку получаем файл конфигурации поставщика cf 24

    2. Создаем пустую базу и загружаем в нее cf 24. С помощью cfu получаем базу с типовой конфигурацией поставщика 27

    3. Далее как в (49)

    да…где ж мне взять конфигурации ПОСТАВЩИКА?…у меня только cfu.

    Подготовить на основе файла cf 24

    зачем мне конфа поставщика чистая 24-ая?

    Для подготовки обновления в котором ничего не потеряется

    1.Делаю сf24 с изменениями

    2.В чистой 27 делаю cfu по отношению к ней.

    3.В чистой????(или можно в рабочей) 24 делаю обновление на 27 через это cfu

    Что у вас получилось? cfu для перехода с вашей рабочей конфигурации 24 на конфигурацию поставщика 27. В конфигурации поставщика 27 нет внесенных вами изменений и соответственно полученный таким образом файл cfu 24-27 будет предназначен для перехода на типовую конфигурацию поставщика 27 с удалением всех внесенных вами ранее в 24 изменений. Вы уверены, что вам нужно именно это?

    Reply
  52. Merlin12042009

    Обновляется 24!!!!!!!!!!!!!!!!!!!!!оля-оля-оля-оля…alexk-is….чемпион!!!!!! ❗ 🙂

    Reply
  53. Merlin12042009

    почему удаляться будет?…сейчас посмотрим результат

    Reply
  54. alexk-is

    (54) Ну, как? 🙂

    Reply
  55. Merlin12042009

    Проверяю, но мне не понравилось, что все изменения стали на поддержку.Возникает вопрос, как будут проходить последующие обновления…И еще одно непредвиденное обстоятельство. Срочная доработка!!! 🙁 Зато у меня уже есть голые сэфки и будет чистый эксперимент.И еще, Товарищ, который был админом этой рабочей базы (хранилище я имею ввиду),отключился от базы совсем, я в локале привязана к этой базе, но могу обновить только свою базу и у меня есть административные права, как же мне обновить рабочую базу из хранилища???…Отключить опасно или нет?…Все пользователи хранилища слетят или нет, если я под тем же именем подсоединю базу, что была у моего Товарища???? 😳

    Reply
  56. Merlin12042009

    Это вопрос из другой, но очень смежной области, и вы это знаете, помогите пожалуйста.

    Reply
  57. Merlin12042009

    Или другими словами, как поменять путь к базе в закладке Администрирование хранилища?

    Reply
  58. Merlin12042009

    «»»»»Что у вас получилось? cfu для перехода с вашей рабочей конфигурации 24 на конфигурацию поставщика 27. В конфигурации поставщика 27 нет внесенных вами изменений и соответственно полученный таким образом файл cfu 24-27 будет предназначен для перехода на типовую конфигурацию поставщика 27 с удалением всех внесенных вами ранее в 24 изменений. Вы уверены, что вам нужно именно это?»»»» Мне это не нужно. Мне нужно как можно больше перенести изменений, отличных от типовой, автоматом. Получается, что я могу сделать cfu со всеми изменениями только если я сижу в 24 доработанной. Тоесть у меня есть собств.изм и я уже сделала cfu24-27 типовой конфы.Теперь стоит задача «плюс»….cfu24+cfu24-27.Неужели нет возможности соединения CFU?

    Reply
  59. alexk-is

    (50) (59) Тогда повторюсь. По пунктам в статье.

    1. Из копии рабочей базы через поддержку получаем файл конфигурации поставщика cf 24. Т.е. в нем не содержится ваших изменений

    2. Создаем пустую базу и загружаем в нее только что полученный cf 24. С помощью cfu от поставщика получаем базу с типовой конфигурацией поставщика 27. Если все сделали правильно, то основная конфигурация в базе будет на поддержке без возможности редактирования и без ваших изменений

    3. В этой типовой базе 27 создаем файл cfu 24-27, используя ранее полученный нами файл cf 24. С помощью cfu 24-27 обновляем копию рабочей базы через поддержку. В результате должна обновиться конфигурация поставщика и в основной конфигурации измененные объекты поставщика, а добавленные вами объекты и реквизиты не будут поставлены на поддержку поставщика. Т.е. основная конфигурация будет отличаться от конфигурации поставщика с учетом ваших изменений и при последующих обновлениях будут сравниваться 3 конфигурации: старая поставщика, новая поставщика и основная

    Если у вас нет файла cf 24, то нужно начинать с получения этого файла. В нем не должно быть ваших изменений, а при загрузке в пустую базу основная конфигурация должна получаться на поддержке без возможности редактирования и без ваших изменений. Возможно, что такой конфигурации уже нет в вашей базе, тогда воспользуйтесь дисками ИТС и создайте нужный файл поставки cf 24

    Reply
  60. Merlin12042009

    я создала уже две базы 24 и 27 с полной поддержкой, красные замочки на них висят 🙂 Теперь пойду дальше….

    Reply
  61. alexk-is

    (61) Надеюсь ваших изменений в этих базах нет. Иначе опять не получится.

    Собственно отдельная база с типовой 24 не нужна. Нужен файл поставщика cf 24. Предполагалось, что после получения файла поставщика cf 24 эта база будет обновлена до 27 через поддержку для получения файла cfu 24-27.

    Ну, две — так две. Хуже не будет…

    Reply
  62. acsent

    Не оптимальный метод. Обычно можно сразу за одно обновление, НО нельзя пропускать обновления в которых удаляются реквизиты

    Reply
  63. alexk-is

    (63) Такое впечатление, что статью не читали…

    В некоторых случаях можно также сократить количество обновлений, если подготовить собственные файлы обновления. Для этого необходимо вычислить обязательные для запуска релизы (ключевые) и подготовку файла обновления выполнять от текущего релиза до ключевого

    Соответственно, если метаданные в текущей версии были удалены, то предыдущая версия была ключевой.
    Reply
  64. acsent

    (64) Зачем было городить такую большую статью, если последнее предложение ее отменяет?

    Reply
  65. acsent

    Простого механизма поиска ключевых конфигураций не дано

    Reply
  66. alexk-is

    (65) Какое предложение все отменяет?

    При использовании подобной схемы можно получить эффект при уменьшении количества обновлений и уменьшении объема файлов обновлений. Т.к. файлы обновлений будут содержать только изменения для перехода с вашей текущей версии на ключевую или последнюю версию поставщика.

    или

    С анализом действий, выполняемых при первом запуске после обновления конфигурации, немного сложнее. В этом случае желательно немного уметь читать программный код.

    (66) Хм. У меня такого, чтобы действительно «простого» механизма нет. А у вас?

    Reply
  67. Merlin12042009

    27 конфа натянута с пом cfu24-27, использовала фильтр двойного изменения и проставила в нужных ф-иях, процедурах и формах «обновить с приоритетом основной конфигурации», чтобы не потерять своё, а фирма 1с перенеслось заремаркировано.Теперь нужен анализ и представление, что изменила фирма 1С и что внедренцы. В 24 рабочей в настройке поддержки «сравнить, объединить» смотрю изменения и в этой 27 ,только что родившейся, делаю то же самое и сравниваю эти две конфы и дорабатываю.Верно? Или можно проще? 🙁

    Reply
  68. Merlin12042009

    Жду ваших рекомендаций, скачать вашу обработку и дэтэшку не могу 🙁

    бодливой корове бог рога не дает.

    Reply
  69. alexk-is

    (69) Обработка или «дэтэшка» тут не помогут. Обработка предназначена только для более наглядной визуализации того, что вы видите в отчетах. К сожалению в некоторых отчетах, создаваемых при сравнении объектов конфигураций, мне было ничего не видно. Вот и написал для себя инструмент в помощь.

    В вашем случае для того чтобы увидеть, что именно натворили внедренцы, необходимо сравнить типовую 24 с рабочей конфигурацией 24. Т.е. анализировать то, что у вас было еще до начала обновления. Это покажет вам все измененные объекты. Попавшие в фильтр как дважды измененные необходимо проанализировать более пристально. В некоторых случаях вам не придется переносить измененный код, например, потому что разработчики 1С реализовали аналогичный механизм или перенос не имеет смысла в связи с изменением законодательства или учетной схемы.

    Кроме этого необходимо проверить работу всех измененных внедренцами объектов. Может после обновления конфигурации они перестали работать.Чаще всего это связано с изменениями в использованных механизмах типовой конфигурации. Например, изменен состав реквизитов функции глобального модуля.

    Reply
  70. artbear

    (70) Подскажи, какие релизы УПП на твой взгляд являются ключевыми.

    Мне нужно 1.2.21 обновить до последней УПП.

    Заранее спасибо.

    Reply
  71. alexk-is

    (71) 1.2.21.х — 1.2.23.2 — 1.2.27.1

    Замечание по 1.2.27.1. Необходимо в обновление сразу влючить заплатки из http://users.v8.1c.ru/ErrEnterprise_1_2_27_1.aspx

    Блок по ЗП имеет очень много проблем в типовой конфигурации. Кроме этого ориентировочно 04.02.2010 выйдет 1.2.28.х

    Reply
  72. Merlin12042009

    Так и вышло.Ничего не перенесла руками.Просто там, где изм дважды внимательно сделала «Индивидуальную настройку» по модулю.Вопросы остались по блоку Производство, так как он сильно изменился и фирмой и внедренцами. 🙁

    Вам спасибо и сейчас еще раз просмотрев вашу статью, я понимаю, что вашей работой можно гордиться.Спасибо.

    Reply
  73. chigsrOck

    Добрый день! Обновляю УПП с 17.3 до 28.1. Обновился до 19.1.

    Подскажите пожалуйста, можно ли с 19 сразу «прыгать» на 23 или лучше обновиться сначала до 20-21 версии? Спасибо!

    Reply
  74. anig99

    (74) а учет авансов ведете на счетах или на регистрах? Просто, если на счетах, но лучше до 21…Если нет, то тоже желательно — слишком много изменений.

    Reply
  75. alexk-is

    (74) Почему на 1.2.28.1, а не на 1.2.29.1.

    Все зависит от вашей базы данных, в некоторых случаях — да, можно.

    Reply
  76. chigsrOck

    Спасибо за ответы!:)

    (75) на счетах 😀 но я так понимаю эту фишку не поздно сделать и в 23? В общем все-равно я уже начал обновляться на 21…

    (76) ну мне хотя бы до 28:) главное новую отчетность успеть сдать:) кстати прыжок 1.2.23.2 — 1.2.27.1 не слишком большой? Если нет, то обязательно нужно обновлять до 27 или можно сразу до 28?(насколько я понимаю, когда вы писали комментарии ниже по поводу обновления, 28 еще не вышла — вот и хочется уточнить:)))

    Reply
  77. alexk-is

    (77) В 1.2.29.1 мы ставили именно из-за отчетности. Например, новая 4-ФСС есть только в ней. Подсистема регламентированной отчетности в 1.2.29.1 была в некоторой степени переработана и формы из 1.2.29.1 не работают в 1.2.28.1.

    Сможет ваша база обновиться до последнго релиза или нет — это зависит от нее. Наша может.

    Reply
  78. chigsrOck

    (78) Спасибо, будем обновлять до 29.

    Все же в разрезе данной статьи, после обновления на 23 версию УПП порядок обновлений по ключевым релизам:

    23.2->27.1->28.1->29.1

    Я правильно понял??? 😎

    Reply
  79. alexk-is

    (79) Для вашего случая ключевые релизы

    1.2.17.3 — 1.2.19.1 — 1.2.23.2 — 1.2.29.1

    Но выдержит ли это ваша база я не знаю.

    Reply
  80. chigsrOck

    Спасибо! 😎 а можно ли рассчитывать что при прыжке 1.2.23.2 — 1.2.29.1 обработка обновления инф. базы сработает корректно?

    Reply
  81. chigsrOck

    (80) Если еще можно, прошу профессионального совета:) По коду в 29 версии УПП вижу что обновление ИБ начинается с 23.2 версии.

    Т.е. если я обновляюсь с 23 до 29 весии, то все должно пройти корректно.

    А в перечне обработок обновления, запускающихся после обновления БД самая ранняя версия, для которой обновляется функционал ЗУП — 1.2.26.

    Как быть в таком случае? Лезть в 26 версию, копировать оттуда код всех обработок, и запускать их в обновляемой 29 версии??

    И еще в дереве «пакета обработок» указано что-то типо «переход с такой-то версии». в эту ветку вложены обработки + переход с более поздней версии…

    Правильно я понимаю что если я обновляюсь с 17 до 19 версии мне не следует делать обработки помеченные как «переход с 14/15» или 16 версии??? Спасибо.

    Reply
  82. alexk-is

    (82)

    А в перечне обработок обновления, запускающихся после обновления БД самая ранняя версия, для которой обновляется функционал ЗУП — 1.2.26.
    Как быть в таком случае? Лезть в 26 версию, копировать оттуда код всех обработок, и запускать их в обновляемой 29 версии?? 

    А разьве там есть что копировать?

    И еще в дереве «пакета обработок» указано что-то типо «переход с такой-то версии». в эту ветку вложены обработки + переход с более поздней версии…

    Правильно я понимаю что если я обновляюсь с 17 до 19 версии мне не следует делать обработки помеченные как «переход с 14/15» или 16 версии???

    Вообще-то они должны были быть выполнены при переходе на 17. Т.е. повторно выполнять их не нужно.

    Reply
  83. alexk-is

    (82)

    А в перечне обработок обновления, запускающихся после обновления БД самая ранняя версия, для которой обновляется функционал ЗУП — 1.2.26.
    Как быть в таком случае? Лезть в 26 версию, копировать оттуда код всех обработок, и запускать их в обновляемой 29 версии??

    А разьве там есть что копировать?

    И еще в дереве «пакета обработок» указано что-то типо «переход с такой-то версии». в эту ветку вложены обработки + переход с более поздней версии…

    Правильно я понимаю что если я обновляюсь с 17 до 19 версии мне не следует делать обработки помеченные как «переход с 14/15» или 16 версии???

    Эти обработки должны были быть выполнены при переходе на версию 17. Повторно выполнять их не нужно.

    Reply
  84. chigsrOck

    (84) Честно говоря не знаю какой пакет обработок предусмотрен в 24,25,26,27 версиях…

    в 29 в модуле пакета обработок есть интересный участок кода(все строки закомментированные):

    //Пока обработки не нужны. Закомментаренный код оставлен для примера
    //Ветка1220 = ДобавитьСтрокуВДеревоОбработок(ДеревоОбработок,»РЕЛИЗ»,»Переход с 1.2.19″,Истина,»1.2″);
    //ДобавитьСтрокуВДеревоОбработок(Ветка1220,»ОбновлениеФункционалаЗУП2511″,»Обновление данных управления персоналом и учета заработной платы»,Истина);
    //Ветка1223 = ДобавитьСтрокуВДеревоОбработок(ДеревоОбработок,»РЕЛИЗ»,»Переход с 1.2.20″,Истина, «1.2»);

    Ну а дальше уже строки для обновления «Переход с 1.2.26», 27 и 28

    Из этого можно предположить, что по части ЗУП с 19 до 25 версии обработки не нужны, что очень странно…

    И еще всплывает вопрос в примере выше если я перехожу с 23 на 29 грамотно ли отработают обработки типа «Переход с 1.2.26» или «Переход с 1.2.27»? Thank you for your patience:)/

    Reply
  85. alexk-is

    (85) Эти строки присутствуют и в обработках других версий. Причем именно в таком виде. После них ничего нет.

    Т.е. все операции необходимые к выполнению при переходе от версии к версии выполняются автоматически и не требуют дополнительных действий со стороны пользователя.

    Обработки по переходу с 26, 27 и 28 могут выдать список ошибок, требующих решения со стороны пользователя. Т.е. операции выполняются в полуавтоматическом режиме.

    Reply
  86. chigsrOck

    (86) Спасибо за ответ! но опять возникли вопросы:

    Т.е. все операции необходимые к выполнению при переходе от версии к версии выполняются автоматически и не требуют дополнительных действий со стороны пользователя.

    Обработки по переходу с 26, 27 и 28 могут выдать список ошибок, требующих решения со стороны пользователя. Т.е. операции выполняются в полуавтоматическом режиме.

    Не совсем понятно… Имеются в виду действия, выполняющиеся при первом запуске(там как правило выполняется фигня вроде заполнения свяких коэффициентов и ставок в справочниках и регистрах сведений) или пакет обработок, запускающийся после того как обновлена версия БД?

    Я так понимаю, что пакет обработок это самая важная вещь, помимо вывода ошибок она может менять документы или непосредственно движения (кстати не совсем понятно требуется ли перепроводить документы, в которых, например дозаписали строки в Табличные части?). ??? В служебных сообщениях он не пишет нифига чего наменял в БД….

    Reply
  87. alexk-is
    Т.е. все операции необходимые к выполнению при переходе от версии к версии выполняются автоматически и не требуют дополнительных действий со стороны пользователя.

    выполняется фигня вроде заполнения свяких коэффициентов и ставок в справочниках и регистрах сведений

    Обработки по переходу с 26, 27 и 28 могут выдать список ошибок, требующих решения со стороны пользователя. Т.е. операции выполняются в полуавтоматическом режиме.

    пакет обработок, запускающийся после того как обновлена версия БД

    В служебных сообщениях он не пишет нифига чего наменял в БД….

    Как мне кажется, это претензия к разработчику. Замечу, что в каждом дистрибутиве обновления идет инструкция. Основные моменты вызывающие сложности там описаны. В случае доработанной конфигурации эти вопросы можно согласовать с исполнителем, выполнявшем доработки.

    Reply
  88. maxp77

    может кто сталкивался уже: какие релизы являются ключевыми между УПП 1.2.25.1 и УПП 1.2.33.1?

    Reply
  89. Fr1eNd_Tver

    Спасибо отличный материал, встречался с интересной закономерностью, при обновления камина, когда обновить можно было только сравнением и объединением конфигураций, Подержка-обновления писало, что релиз не подходит для текущей конфигурации. Хотя конфигурация был полностью на поддержки

    Reply
  90. deadman66

    отличная статья. только так и обновляюсь по ней. скажу только, что перед обновлением обязательно проверить постановку на поддержку новых объектов конфигурации, появивишихся после последнего обновления. Если последнее обновление конфиги было просто cf-ником, то у новых объектов поддержка есть, но она не активна и при последующих обновлениях они не меняются, а это может дать фатальную ошибку базы при работе. у меня так было с одной из форм регламентированной отчетности. восстановить поддержку стандартных объектов просто: конфигурация — поддержка — настройка поддержки… два клика в корневом узле и поставить там галочку для всех подчиненных

    Reply
  91. Orient_RG

    интересно что мне здесь ответят опытные:

    всегда обновляю cfu, но несколько раз и пробовал cf. Так вот, при обновлении cf-ником, когда заходишь в режим отладки, то в информационных сообщениях пишет что то типа «проводиться обновление до версии 2.0.26.8, успешно обновлено, проводится обновление до версии 2.0.27.10» и так далее все пропущенные ключевые релизы. так не означает ли это, что нет разницы в обновлении через cfu и cf. Заранее прошу прощения, если мой вопрос очень непрофессиональный)

    Reply
  92. dtitov

    Спасибо за статью.

    Reply
  93. polpot

    (1) poppy, как найти цепочку быстро и без загрузки всех обновлений? без проверки, какой релиз на какой обновлять?

    Reply
  94. iov

    (92) пример

    поле ссылочного типа сделали полем текстовым и ссылочным например релиз 1 и 2 — для обработки этого написали специальный код .

    Потом поле сделали чисто текстовым 3 и ничего не писали.

    Вопрос — останутся ли данные в этом поле при обновлении через версию 2 ? (то есть 1-3).

    Подсказка — тен (читать наоборот)

    Reply
  95. iov

    (89) maxp77,

    1.2.39.1 25.04.2011 1.2.38.1

    1.2.38.1 08.04.2011 1.2.37.1

    1.2.37.1 05.03.2011 апрельский выпуск 2011 г. 1.2.36.1

    1.2.36.1 08.02.2011 мартовский выпуск 2011 г. 1.2.35.1

    1.2.35.1 24.12.2010 февральский выпуск 2011 г. 1.2.34.1

    1.2.34.1 24.11.2010 январский выпуск 2011 г. 1.2.33.1

    1.2.33.1 23.09.2010 ноябрьский выпуск 2010 г. 1.2.32.1

    1.2.32.1 16.07.2010 августовский выпуск 2010 г. 1.2.30.1, 1.2.31.1

    1.2.31.1 05.07.2010 1.2.30.1

    1.2.30.1 23.04.2010 июньский выпуск 2010 г. 1.2.29.1

    1.2.29.1 15.03.2010 апрельский выпуск 2010 г. 1.2.28.1

    1.2.28.1 05.02.2010 мартовский выпуск 2010 г. 1.2.25.1, 1.2.26.1, 1.2.27.1

    1.2.27.1 23.12.2009 февральский выпуск 2010 г. 1.2.25.1, 1.2.26.1

    1.2.26.1 11.11.2009 декабрьский выпуск 2009 г. 1.2.24.2, 1.2.25.1

    1.2.25.1 15.10.2009 ноябрьский выпуск 2009 г. 1.2.24.2

    1.2.24.2 13.08.2009 сентябрьский выпуск 2009 г. 1.2.23.2, 1.2.24.1

    1.2.24.1 06.08.2009 1.2.23.2

    1.2.23.2 23.06.2009 июльский выпуск 2009 г. 1.2.22.3, 1.2.22.4

    1.2.22.4 14.06.2009 1.2.22.3

    1.2.22.3 13.04.2009 майский выпуск 2009 г. 1.2.19.1, 1.2.20.1, 1.2.21.1

    1.2.21.1 27.02.2009 апрельский выпуск 2009 г. 1.2.19.1, 1.2.20.1

    1.2.20.1 03.02.2009 мартовский выпуск 2009 г. 1.2.19.1

    1.2.19.1 09.10.2008 ноябрьский выпуск 2008 г. 1.2.18.1

    1.2.18.1 17.09.2008 октябрьский выпуск 2008 г. 1.2.16.1, 1.2.17.3

    1.2.17.3 07.07.2008 августовский выпуск 2008 г. 1.2.14.1, 1.2.15.4, 1.2.16.1

    1.2.14.1 21.01.2008 февральский выпуск 2008 г. 1.2.12.1

    1.2.12.1 25.12.2007 1.2.11.1

    1.2.11.1 24.10.2007 ноябрьский выпуск 2007 г. 1.2.10.1

    1.2.10.1 24.09.2007 октябрьский выпуск 2007 г. 1.2.6.2, 1.2.7.1, 1.2.8.2, 1.2.9.2

    1.2.7.1 09.06.2007 июльский выпуск 2007 г. 1.1.9.3, 1.1.10.3, 1.2.5.1, 1.2.6.2

    1.2.5.1 16.02.2007 мартовский выпуск 2007 г. 1.1.9.3, 1.1.10.3, 1.2.1.37, 1.2.4.1

    1.2.4.1 18.12.2006 январский выпуск 2007 г. 1.1.9.3, 1.1.10.3, 1.2.1.37, 1.2.3.1

    разберешься? если нет — тогда лучше пригласи профи.

    Reply
  96. Aleksey_3

    (99) Осталсь дело за малым. Найти такой пример в БП, ибо мне начиная с 2006 года ни в 1.5, ни в 1.6 ни в 2.0 такого примера найти не удалось

    Reply
  97. Serge_ASB

    (60)

    Скажите, если изменения в первоначальную конфигурацию вносились не только как добавленные объекты, но и как добавленные реквизиты, измененные обработки, то сохранится ли это все при данном порядке обновления конфигурации (например УТ11 с 11.0.8.13 до 11.1.1.13)?

    P.S.: Вам в чем-то легче — у вас недорогой интернет. Есть места на планете, где качать несколько раз последовательное обновление конфигурации (возможно еще и платформы) будет весьма ощутимым ударом себя по карману…

    А возможность прыгнуть через несколько обновлений, не потеряв при этом изменений в конфигурации и в данных (плюс новый функционал) — это «самое то. Собственно, для обретения нового функционала денно и нощщно ведется работа в фирме 1С 🙂

    Reply
  98. TeMochkiN

    (132) Serge_ASB, вот в этой статье всё подробно расписано:

    http://infostart.ru/public/18562/

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *