none
Ayuda!!! Generar archivo en formato BCD y ASCII desde SQL RRS feed

  • Pregunta

  • Hola a todos.
    Alguno sabe si en SQL existe alguna función que permita generar un archivo en formato BCD (8 bytes)?

    Me explico un poco mejor, tengo una tabla en la cual tengo almacenada unos registros, ahora bien, con algunos de estos registros de la tabla, debe generar un archivo en formato BCD(8 BYTES) 
    y formato ASCII.
    Ejemplo:

    • Si el idrom es '000000003ADFB506', en formato BCD será: 0x00 0x00 0x00 0x00 0x3A 0xDF 0xB5 0x06 
    • Si el tamaño en tabla del IDROM fuera superior a 16 caracteres se cogerán los 16 primeros
    • Si la fecha de próxima renovación es '07/05/2014', en formato BCD será: 0x07 0x05 0x14
    • Si la placa es 'FBE913', en formato byte tamaño 17 será: 'FBE913           ' (11 espacios al final) --> En formato byte sería: 0x70 0x66 0x69 0x39 0x31 0x33 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20
    • Si el tamaño de plaza fuera de longitud superior a 17 caracteres se cogerían los 17 primeros
    • Por tanto, el registro sería:
      0x00 0x00 0x00 0x00 0x3A 0xDF 0xB5 0x06 0x07 0x05 0x14 0x70 0x66 0x69 0x39 0x31 0x33 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x0A

    Agradezco mucho si alguien sabe de alguna función en SQL que me permita generar el archivo en estos formatos.

    Gracias.


    Yami

    martes, 27 de diciembre de 2016 13:11

Respuestas

  • Es excesivamente enrevesado como para que resulte aconsejable hacerlo en SQL. Esas operaciones típicamente las harías desde código cliente. Si por alguna razón resulta inviable aplicar un programa cliente y necesariamente tiene que hacerse en lado servidor, entonces podrías considerar escribir una DLL en .Net y montarla en SQL Server usando la integración con CLR (con "Create Assembly" y permiso external_access para que pueda crear los archivos).
    martes, 27 de diciembre de 2016 13:47