Transferência de dados entre objetos de metadados idênticos do banco de dados 1C por meio da substituição de UIDs no banco de dados SQL

Se for necessário migrar de uma configuração de fornecedor para outra, ou ao atualizar uma configuração modificada, se o Fornecedor posteriormente adicionou um objeto que foi adicionado por nós de forma independente, pode acontecer que os objetos antigos e novos tenham identificadores internos diferentes. Ao comparar / mesclar configurações, pode-se verificar que o documento antigo não corresponde ao novo, pois possuem diferentes identificadores de metadados internos, e ao carregar (atualizar) uma nova configuração de provedor, o documento antigo é excluído juntamente com todos os documentos inseridos.











Existem várias opções para resolver este problema:







A. Transferir documentos excluídos após atualizar a configuração para um novo objeto de metadados usando regras de troca (este método recomenda usar 1C);







. / . . ( ), / . .







. , . , , , . , .. .







"".







  1. , , . , ( ..) . . , , , «» . . , «» ( , ), — :





  2. / , , . , . : , , — . , , .



  3. XML-, :







  4. «» (ivi_.xml), :

    :



    :



    :





  5. «” .



  6. , :





  7. , ,, .

    https://its.1c.ru/db/metod8dev/content/1798/hdoc — .

    Params, 1 MS SQL. , Deflate:



  8. Params DBNames:



    SQL Management studio HEX, , . HEX BIN. HEX to BIN. https://tomeko.net/online_tools/hex_to_file.php?lang=en

    , , 955126 .



  9. . : https://infostart.ru/public/618906/

    DBNames ( — 1, — SQL):





  10. – 1 , SQL.

    .



  11. (Inflate) , (9)



  12. SQL- DBNames:

    UPDATE [ukf_real_test].[dbo].[Params] SET [BinaryData] = (

    SELECT *

    FROM OPENROWSET(BULK N'C:\DBNames-FM.dfl', SINGLE_BLOB) tt) where [FileName] = 'DBNames'.

    , 1 :

    UPDATE [ukf_real_test].[dbo].[Params] SET [DataSize] = 954234 where [FileName] = 'DBNames';



  13. 1. , 1 . , .



  14. 1 .

    „“ „“:



    .

    1 , .

    , , , .



. , , — .








All Articles