PDA

View Full Version : Casas decimais



uandzleonel
29-Sep-2020, 01:32 PM
Olá :)

Alguém sabe se é possível criar campos com mais de 8 casas decimais utilizando o driver MSSQL?
Independente do tipo de dados que aceita precisão, ele só permite criar o campo com 8 casas decimais.
Já tentei pelo Database Builder e pelo Table Editor do Studio (18.2).
Também dei uma olhada no arquivo de configuração do driver (Database > Configure Database Drivers > MSSQL > Advanced) e não vi nada para configurar algo do tipo.

13993

13998

Samuel Pizarro
29-Sep-2020, 02:07 PM
numca precisei.. mas isso nao parece ser limite no lado do MSSQL com certeza.. e sim no driver da daw.... que deve ainda estar conforme os limites dos arquivos .dat nativos

A documentacao ta confusa....
tem lugar que fala que suporta 16.16, mas em outro, logo em seguida, fala que eh so 14.8

https://docs.dataaccess.com/dataflexhelp/mergedProjects/DevelopmentGuide/dataflex_specifications.htm?rhhlterm=maximum%20pre cision&rhsyns=%20




Numeric precision

Fixed point: 8 places after decimal point.
Floating point: 16 significant digits.
DECIMAL type adds 16.16 support.



Numeric range
Fixed: ±9,999,999,999,999,999. 9999999999999999
with DECIMAL type.

Floating: ±1.0e±306








Maximum size of numeric column

99,999,999,999,999.99999999 to -9,999,999,999,999.99999999 (14.8 places)








Sugiro postar la no forum em ingles, na parte de conectividade.
ou entao abrir um chamado.

Outra opcao, seria vc criar sua tabela usando o MSSQL Studio, e "conecta-la" pelo dataflex, importando sua definicao pra dentro do filelist.
quem sabe ai ele aceita..

[]'s
Samuel

Renato.Antonacci
29-Sep-2020, 02:48 PM
Como vai amigo. Com certeza deve ser o FLOAT, mas não deve criar a "quantidade de casas decimais" pois ele grava lá dentro de alguma forma. Eu realmente não sei como, mas tive que ler os valores de um Banco SQL de outro sistema que usamos aqui, e os campos deles estavam definidos como "Float" de tamanho 53. O conteudo do campo, retornava um valor diferente, tipo 1,564E... que não conseguia converter de forma nenhuma. Pesquisando aqui mesmo no Forum, encontrei a função abaixo, que converteu o valor para mim. Não me aprofundei no assunto, já que foi resolvido, mas creio que esse seja o caminho que você deva percorrer.

[]s



Function SQLFloatToDFDecimal String svalue Returns String
Integer ipos
Decimal dvalue
Move (Pos("E",Uppercase(svalue))) to ipos
If ipos Begin
Move (Left(svalue,ipos-1)) to dvalue
Move (dvalue*(10^(Right(svalue,Length(svalue)-ipos)))) to dvalue
Move dvalue to svalue
End
Function_Return svalue
End_Function


Somente complementando, um pequeno teste que eu fiz aqui agora



Object oButton3 is a Button
Set Location to 155 287
Set Label to 'oButton3'

// fires when the button is clicked
Procedure OnClick
Float fteste
Move "112345678910111,2131415161718" to fteste
Send Info_Box fteste
End_Procedure

End_Object


13996

https://support.dataaccess.com/Forums/image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALIAAACyCAYAAAD mipVoAAARUElEQVR4Ae2dvW8cxxnG90 Iu/wZAVjRVf4CNwYERIUQQABLJ4ARwEijALb1SekoUdQHKYnUNyVX MiCmCWAIcGdBRVIYAtOosYE0MZzCQZo3eGbv2Xt3Obs3dzzucU 4PgcHs7c7ODJ/5zbPvzB2PxVdffWVMz58/t8OkZ8 emZI0mBUDk7BYTANxW0d3d3dNSRrMioE2zmKAF7GTsXPNSmfVW dUj8CdhoMkhWR0Lsr xrcGnT5 aT0 ePDElaTAtA54lHLdx59nsBJkFYxX5xto6/PjxY1OSBqkMtHHkWYuxCE6jIBNg5P5GX6FvtK2jjx49MiVpkMp AG0eeNc gZ/MAyITYF8IxKvAV kZ9Rx8 fGhK0uCwDHimPGueQTBJTmsgE2LvxJwBrICVsqFmhx88eGBM9 /fNyVpkMoAuUHe5Iq8kT/ySD4rkLsgphuzElTKhth4s7M7OzumJA0mZaDJEfkib2CPHALmV pBp1SxA8nEzAUblvkF0dnt7u0r37t0zpLt37ypJg2QGyI1nCWy RNe/UBJp8BkemG8cgjgFMcNkwgL1z505IW1tbxrS5uWlK0iCVAXKDn DyRMcBNqAk0YQajBSFmXOyd2EOMWYHK6LJoiB28ffu23bp1K6S bN2/ajRs3lKTB1AyAIfAErsAYwQbUbTBXIHs3pl0zlCDEgJfQorGNj Y2Qrl /buvr6yFdu3bNrl69qiQNOhlYW1szpiYvYAg8gSswBmME2AAaMM NQwaR35gByDGK6MQrjRkD86zVJIGc2OAMCMqaDpz0QUxVoq4AT fCiQFycfqFkjTonQGwB4cGzDDVZphxAGQ6MSCGGwNk3IgKBLIm 8byMDOwh5EBIi7gZ5uoXgJ0gIw4B YhNEKcIZIE8T5ARUyNmZojh4 UAsn/Dgws8ujEKYwagAoEskOcJ8pUrV8Ii0LsyQ4yxIDM RnwikAXyPEG fPlyCC8QHWDNhpCXIUYAmdttiI8ZG/stN1g5tkMEskCeJ8irq6thS8 HFwAZrly0hRUEGfExrByBtkAWyPME dKlS2HvGdEBwwvwCZijIANi7FYwPoaVY9NaIAvkeYJ88eJFGww GITpgeJEEMkjHQk8gC B5Acx2YaIXLlwwLPgQHTC8AJ IlWuO3IyPATKCatyErQ85soAmWOPy7/75Lzu19V3rGye4hjLj6uF1sHf /HnDgg/RAUEGn3DlImWhh5gElp4G8mvbsx9sJeXdr60fLPz8 NY TCnfV5m/vLV9M9vbemHF1ltb 4sAJlCpOUD9339/icLcda2tfrB37tw5w4IPpso4uRNkxMf8fAV2LI4GZAA/hKUvQBPb fDl2zARV95gmiVOysS62wZqEc/HgI2dS/ndAfLZs2crkLGL5uPk4Mj bWm/0INlHy3IP8vtFnwCeHD9cQq8vgxBxs6FX/CBT8TJRwwyXPdnW3s5DCHMbP/lN1acLt24jCt47oUVw0c6z4dHexjosp69Nz8PHXJY71YZAqA8y n74EtfLn7KdMiQonXV44c1rF5d9Y2s/8o7R06G1fGv/FHp46JrHBLgt1GiWj70 BiCbGeEJMTEf1UMYq/izhLuCN0BDxy6vjeAsXxtj62GsXV2vteMh822WEFf3RJ3Rly/bjPfPt6HjJogLAjJhxAA3wXDXAriEvIQBzliC4 9r1pPwmovKYL7DNiPtVQOQWH7Uv7K/1f3RSfF liHEyP3xpFodA0d2sM4D5BqwcOExIE9QXiB3T84YuLFzKVDnA/Iwbq4/uunQh3BkuCtDkAApJ1ZLaNFaPhZasH/dA5oyUItWpgvYrmttOmQEcnOxR AAySFAPu0WdD/ YHt05GoR2VzsdZQPE4Hlff8EchPAo3hDBNtvPe5aZDaoQzi7F3 2Z/U4LGKPPwZFzHPTXtsedlQWEoOmWOb4WyGPA5J5xFZuPKZ8jBIv QZ4EsMN0bQDk Lcs C2SBLJCn 6xFvrN ER7Bi/o7yJHlyHJkObKeLsfF4eXIcmQ5shxZjixHlhMuhBMuLMj8pIFy KdCnAjOPkfvsvNqSAlRAIFMJ5VkrIJCzHj51ngoIZCqhPGsFBH LWw6fOUwGBTCWUZ62AQM56 NR5KiCQqYTyrBUQyFkPnzpPBQQylVCetQICOevhU epgECmEsqzVkAgZz186jwVEMhUQnnWCgjkrIdPnacCAplKKM9a AYGc9fCp81RAIFMJ5VkrIJCzHj51ngoIZCqhPGsFBHLWw6fOUw GBTCWUZ62AQM56 NR5KrBQIP/7P7/Y9t/ Yb9f 6v99s 7Vny0Wks4h2sog7L6WRwFFgJkQAlAf/W7dStObFpx msrPvnWij/93YrPvi8TjnEO105shrK4R0AvBszZgzx48boE NSuFZGYFLgNtylD21G 5FHfrJW4FsQaYLFx9vlE7bBuy483DpjzeCo8ud84U5S5AB3G/ cL8MI3z4MA7atuuo48RmqFMw5wlzliAjtg2x8CwgJtxDmFG3fv JTIDuQEc GcCIRYg5JtegjuLEcdX68YYqZqVo eVYg47EfdiYQ18ZAjJzjUKSWx84G2lCIQeXyyLMCOYQU2J2IAD vTc6fK/eY8hlC9hALZgFy58SRbbNMC/ kbuXJm8yMbkPFuXFjgTQgnx2Nixz6xGd4B5P3Kj7cC2YAcwgq8 K9cXyKe/DnvLx3v41DsqkA3I4bMTEyzyCDx/Ub5Ozj/5Nnxeg/cn5/sDWy5WbK/rhkiZvZXCiqJMy4P94d17tjI8h2uj86PKw30rvrV9GyyzrmWrq hrdMvlRpL s5GD7vNJvng3I4QNAiVtuHlbK6c8lHaOtj1Z5e0I BGh5uQPkljL7AxtULALeCIAxmMK5wgoHMsCKAZ/wC0SKtPSXJSPt81LfeV4gTxhWAFj JMHbrH8ikNkSQBzjyNZVBvC0gLw8MHq1Gcqt2N7eyghkgFUrwz 4hd 7uwK9K7K1Y7HR5PdbfSPtVZf0fCOQmvP71PEAGmA7G/cFyGXK4c8AEzhvA8yCH45VROOLuqcqHCRCZKBOCXNXn2f36rFv EA 1qEFNY25F68xbynTgJilQ 5CC8BdhQ8eJBy7p8EozHBuPIy56b7VROmMxev9bW2/1uF X2QDcjaLvc6wgYNbBwNnA1Cki8UaeemCB6EMi0Tc66HGvdVr3B NxYV9/siN3tO/r6/k4G5Dz2X47COnBMW2UgduOgdicI9fqq2DF2TqwI0cuF22Vi9cq GL5IBrlxc639xrUeX2YDcj5viDQgxUC7WLUc23qZ1sc77nWP/CjrTZD8Pf6GMBG4LTduMdoksN7f2tVm 7WL/b3IBuRp36KmlBPtWszwLepqUcSOKD8SBbIBGb/9NB8aomoTgTyzDw11OBk7pnwmCmQFcuXKE7zDR5WSQdbHOClZV nlWIENZfOhdH6zPirFeOpsdyFAlhBj4s/8p9pVbnRl1ndjUB4V6wW72jWQJMkIM/fHp7GHIucYsQYbggDk4s74OIGf Ztb3bEGmAoiZw9/x6QtaKMl7mWcPMkaN7qyvzHovGQ6/9EKAzOED0PoSQ6rxfuULBfL7NXT6bb0CAtmroeNsFRDI2Q6dOu 4VEMheDR1nq4BAznbo1HGvgED2aug4WwUEcrZDp457BQSyV0PH 2SogkLMdOnXcKyCQvRo6zlYBgZzt0KnjXgGB7NXQcbYKCORsh0 4d9woIZK GjrNVQCBnO3TquFdAIHs1dJytAgI526FTx70CAtmroeNsFRDI2 Q6dOu4VEMheDR1nq4BAznbo1HGvgED2aug4WwUEcrZDp457BQS yV0PH2Sowc5B/ uknU5IGfTMgkDXxFsJ4BLJAFshbW1t269Ytu379ug0GA8Os6Pu RovYUxoABObIceSHMRyALZIGs0EKP9eMS2smR5chyZDmyHFmOL CdcCCcUyAJZIM QAcXIMxSzzZ1a/0nlZ9 brpUatGmXel4gC RjMZlSgW0rJ5B7BPndu3f2wQcfmPKRDnwitQGael4g9wgyIQbI SiXMArkHAFPdYFw5DpbgPTiBqc04DcddlyP3MCE4WHLkOsjQg9 qMA3XcdYHcI8hy5DrI0EMg9wDgOBdIvc7Bmosj75y0oiiqtHTm lYvPd xksWRnXpWA7ZwsrDi5464fBG Wk1GOnBHEgJ0gzxKClLpenVmyojhpO9Xi8pWdWfKwOpABfI8Qs//UJtUU2soptOhhUnCw nVkQDtyW4Lz7tUZW6rgJsjIPfBH68Tsixy5B/jaZv405wkyB7CXvAasB7N05ZM7OFeCvBQDvnJxf /sj6nNNLr6e TIPUwKDlavjtwJMp0aIJfxcz12nj2wsckrR 4BPj/bD3tMkGODeXTnGDY0oKwBzjLMG2V7cGVqc1iN5cg9TAoOVq O/O6dtS32Ru7rAMZib mMveoBXk5eOXIP8B3WIfz9BJkD2GdewjzB9lvPMFMbr9c0x3Lk HiYFB6tvR 5zwkzTlhy5B/imcYW2ewjyNIO96PdQmzbtUs/LkXuYFBwsOXJ9MSlH7gG VCdIKUeQ4a6EWXn5uWxqk6JjV5mZOfKVK1f0lVktE4yDpbz9T7 u6IE25BpC//PJLu3jxYvj6tmvXrtmNGzfCV7ptbm5a8eTJE3v8 LE9evTIHj58aPfv37ednR27de a8DEMjtXw0ggNsBpjYpsHaV8SCDxSSQt7e3BXKL 3aJrWvtk/2w2kwFshz56AbksAP6vt4vkOWsC/H9Gh5kfMVxUmgRc2R9P7Jcep5PA4B89uxZu3TpUljsra vH1zsccGHxd6DBw/CYg9x8p07d/RF33L0Y HoBHl1ddXW1taMINfTtsSoRdiybI2LkQyHLgeTpws22AfO7cOS PI C8KN2/etArkp0 fWhvId /eDQU3NjbCLEBlzQb0WsD3wQDYO3/ vF2 fNmuXr1qYBL/FiQKcnMvGSBjsxkbz7hZIAvaPqCNtQH2Lly4YNxDJsjgEyFw4R 25CTLfFIGFY5UokAVyDLI zoE9vquHsALmSjeG4UZBxoIvFicLZIHcB7SxNsAe4mNEBgAZYQ XcGO8 B5B3d3dDjByLk7EN58MLVKYkDebFgN8/9m6MyKEAyLHwgttwDC8wAxCXIMRAhQi6sacHu0fsgkAcq0rs9e HDHV988YV9/vnnStIgmQEwA3bAEFgCU ALTszYmLsVjI1htNhhOwAyPkDE/WSGFyjMDxAhNkFlABr7eYAajQBsNNiEG51RkgYpDMAQAS4YAkt gCnyBM/BGiJtujMghgDzOlUE8YUYlcGcCjY1pNILYpQk24UanlKRBFwNg BQmmSHjBFPgCwIgGuG9MN0a0ADZhuFGQ6crNj3UCZmx1oCIAjY oBNBpBY4Tagw24laRBCgMAF wgNQH2e8ZgkCEF3DiA/OzZM6Mjt8XKKIgb6MyoCKEGgUYjhNqDTbjRKSVp0MUAWKHzgiE kMEWAwRqYi0GM9VxBkAkzdi 4g8F9ZW7HEWZYOkONGNAeanZKeTk40qHUAU9xJq8J2IkBDM7AH MMJOjHYRORQA7kJM0AeB3MMaIQdjKUxo5SkQQoD5AY5HZgAd0E MRgPI41y5CbMPNejOaIghBxqnU6NDStIghQFyg5whRAxg8Ecnp tkWz58/N4DcBbP/mz5U4EMNH254qAk2OqQkDVIYADNMYMmHET6U8BCDTaQAMmFGaM HEhV9bzNwGNBaESOyI8nJApEOaDuQHOeBtAtyEmHzWQPau3IyX/QLQhxoeaIYc7IDyciCkQ1wHD2tTI7DEEIKMYVHHUAIuTIiRVyD TlWMwe3emlbNCVI7ExnzOzigvB0U6dOvg2eEx SJv5I8Qg02kGshtMLe5MyplA8zZcBvc7KDycq0hHUY6eHbIE/MmwAAZADMU/j/5oLhYvzBy/QAAAABJRU5ErkJggg==

uandzleonel
29-Sep-2020, 03:55 PM
numca precisei.. mas isso nao parece ser limite no lado do MSSQL com certeza.. e sim no driver da daw.... que deve ainda estar conforme os limites dos arquivos .dat nativos

A documentacao ta confusa....
tem lugar que fala que suporta 16.16, mas em outro, logo em seguida, fala que eh so 14.8

https://docs.dataaccess.com/dataflexhelp/mergedProjects/DevelopmentGuide/dataflex_specifications.htm?rhhlterm=maximum%20pre cision&rhsyns=%20




Numeric precision


Fixed point: 8 places after decimal point.

Floating point: 16 significant digits.

DECIMAL type adds 16.16 support.




Numeric range

Fixed: ±9,999,999,999,999,999. 9999999999999999
with DECIMAL type.

Floating: ±1.0e±306







Maximum size of numeric column


99,999,999,999,999.99999999 to -9,999,999,999,999.99999999 (14.8 places)










Sugiro postar la no forum em ingles, na parte de conectividade.
ou entao abrir um chamado.

Outra opcao, seria vc criar sua tabela usando o MSSQL Studio, e "conecta-la" pelo dataflex, importando sua definicao pra dentro do filelist.
quem sabe ai ele aceita..

[]'s
Samuel

Samuel,
Eu testei da maneira que falou, mas os campos são criados com precisão tamanho 8 normalmente. O FLOAT ele criou com tamanho 0 com o que o Renato disse posteriormente.
Eu preciso que seja criado corretamente pelo DF/Builder para os DEO's conseguirem entender o tamanho que quero, pois quando digitar no campo (ou coluna da db(CJ)Grid) ele precisa permitir e salvar normalmente.

uandzleonel
29-Sep-2020, 04:02 PM
Como vai amigo. Com certeza deve ser o FLOAT, mas não deve criar a "quantidade de casas decimais" pois ele grava lá dentro de alguma forma. Eu realmente não sei como, mas tive que ler os valores de um Banco SQL de outro sistema que usamos aqui, e os campos deles estavam definidos como "Float" de tamanho 53. O conteudo do campo, retornava um valor diferente, tipo 1,564E... que não conseguia converter de forma nenhuma. Pesquisando aqui mesmo no Forum, encontrei a função abaixo, que converteu o valor para mim. Não me aprofundei no assunto, já que foi resolvido, mas creio que esse seja o caminho que você deva percorrer.

[]s



Function SQLFloatToDFDecimal String svalue Returns String
Integer ipos
Decimal dvalue
Move (Pos("E",Uppercase(svalue))) to ipos
If ipos Begin
Move (Left(svalue,ipos-1)) to dvalue
Move (dvalue*(10^(Right(svalue,Length(svalue)-ipos)))) to dvalue
Move dvalue to svalue
End
Function_Return svalue
End_Function


Somente complementando, um pequeno teste que eu fiz aqui agora



Object oButton3 is a Button
Set Location to 155 287
Set Label to 'oButton3'

// fires when the button is clicked
Procedure OnClick
Float fteste
Move "112345678910111,2131415161718" to fteste
Send Info_Box fteste
End_Procedure

End_Object


13996

https://support.dataaccess.com/Forums/image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALIAAACyCAYAAAD mipVoAAARUElEQVR4Ae2dvW8cxxnG90 Iu/wZAVjRVf4CNwYERIUQQABLJ4ARwEijALb1SekoUdQHKYnUNyVX MiCmCWAIcGdBRVIYAtOosYE0MZzCQZo3eGbv2Xt3Obs3dzzucU 4PgcHs7c7ODJ/5zbPvzB2PxVdffWVMz58/t8OkZ8 emZI0mBUDk7BYTANxW0d3d3dNSRrMioE2zmKAF7GTsXPNSmfVW dUj8CdhoMkhWR0Lsr xrcGnT5 aT0 ePDElaTAtA54lHLdx59nsBJkFYxX5xto6/PjxY1OSBqkMtHHkWYuxCE6jIBNg5P5GX6FvtK2jjx49MiVpkMp AG0eeNc gZ/MAyITYF8IxKvAV kZ9Rx8 fGhK0uCwDHimPGueQTBJTmsgE2LvxJwBrICVsqFmhx88eGBM9 /fNyVpkMoAuUHe5Iq8kT/ySD4rkLsgphuzElTKhth4s7M7OzumJA0mZaDJEfkib2CPHALmV pBp1SxA8nEzAUblvkF0dnt7u0r37t0zpLt37ypJg2QGyI1nCWy RNe/UBJp8BkemG8cgjgFMcNkwgL1z505IW1tbxrS5uWlK0iCVAXKDn DyRMcBNqAk0YQajBSFmXOyd2EOMWYHK6LJoiB28ffu23bp1K6S bN2/ajRs3lKTB1AyAIfAErsAYwQbUbTBXIHs3pl0zlCDEgJfQorGNj Y2Qrl /buvr6yFdu3bNrl69qiQNOhlYW1szpiYvYAg8gSswBmME2AAaMM NQwaR35gByDGK6MQrjRkD86zVJIGc2OAMCMqaDpz0QUxVoq4AT fCiQFycfqFkjTonQGwB4cGzDDVZphxAGQ6MSCGGwNk3IgKBLIm 8byMDOwh5EBIi7gZ5uoXgJ0gIw4B YhNEKcIZIE8T5ARUyNmZojh4 UAsn/Dgws8ujEKYwagAoEskOcJ8pUrV8Ii0LsyQ4yxIDM RnwikAXyPEG fPlyCC8QHWDNhpCXIUYAmdttiI8ZG/stN1g5tkMEskCeJ8irq6thS8 HFwAZrly0hRUEGfExrByBtkAWyPME dKlS2HvGdEBwwvwCZijIANi7FYwPoaVY9NaIAvkeYJ88eJFGww GITpgeJEEMkjHQk8gC B5Acx2YaIXLlwwLPgQHTC8AJ IlWuO3IyPATKCatyErQ85soAmWOPy7/75Lzu19V3rGye4hjLj6uF1sHf /HnDgg/RAUEGn3DlImWhh5gElp4G8mvbsx9sJeXdr60fLPz8 NY TCnfV5m/vLV9M9vbemHF1ltb 4sAJlCpOUD9339/icLcda2tfrB37tw5w4IPpso4uRNkxMf8fAV2LI4GZAA/hKUvQBPb fDl2zARV95gmiVOysS62wZqEc/HgI2dS/ndAfLZs2crkLGL5uPk4Mj bWm/0INlHy3IP8vtFnwCeHD9cQq8vgxBxs6FX/CBT8TJRwwyXPdnW3s5DCHMbP/lN1acLt24jCt47oUVw0c6z4dHexjosp69Nz8PHXJY71YZAqA8y n74EtfLn7KdMiQonXV44c1rF5d9Y2s/8o7R06G1fGv/FHp46JrHBLgt1GiWj70 BiCbGeEJMTEf1UMYq/izhLuCN0BDxy6vjeAsXxtj62GsXV2vteMh822WEFf3RJ3Rly/bjPfPt6HjJogLAjJhxAA3wXDXAriEvIQBzliC4 9r1pPwmovKYL7DNiPtVQOQWH7Uv7K/1f3RSfF liHEyP3xpFodA0d2sM4D5BqwcOExIE9QXiB3T84YuLFzKVDnA/Iwbq4/uunQh3BkuCtDkAApJ1ZLaNFaPhZasH/dA5oyUItWpgvYrmttOmQEcnOxR AAySFAPu0WdD/ YHt05GoR2VzsdZQPE4Hlff8EchPAo3hDBNtvPe5aZDaoQzi7F3 2Z/U4LGKPPwZFzHPTXtsedlQWEoOmWOb4WyGPA5J5xFZuPKZ8jBIv QZ4EsMN0bQDk Lcs C2SBLJCn 6xFvrN ER7Bi/o7yJHlyHJkObKeLsfF4eXIcmQ5shxZjixHlhMuhBMuLMj8pIFy KdCnAjOPkfvsvNqSAlRAIFMJ5VkrIJCzHj51ngoIZCqhPGsFBH LWw6fOUwGBTCWUZ62AQM56 NR5KiCQqYTyrBUQyFkPnzpPBQQylVCetQICOevhU epgECmEsqzVkAgZz186jwVEMhUQnnWCgjkrIdPnacCAplKKM9a AYGc9fCp81RAIFMJ5VkrIJCzHj51ngoIZCqhPGsFBHLWw6fOUw GBTCWUZ62AQM56 NR5KrBQIP/7P7/Y9t/ Yb9f 6v99s 7Vny0Wks4h2sog7L6WRwFFgJkQAlAf/W7dStObFpx msrPvnWij/93YrPvi8TjnEO105shrK4R0AvBszZgzx48boE NSuFZGYFLgNtylD21G 5FHfrJW4FsQaYLFx9vlE7bBuy483DpjzeCo8ud84U5S5AB3G/ cL8MI3z4MA7atuuo48RmqFMw5wlzliAjtg2x8CwgJtxDmFG3fv JTIDuQEc GcCIRYg5JtegjuLEcdX68YYqZqVo eVYg47EfdiYQ18ZAjJzjUKSWx84G2lCIQeXyyLMCOYQU2J2IAD vTc6fK/eY8hlC9hALZgFy58SRbbNMC/ kbuXJm8yMbkPFuXFjgTQgnx2Nixz6xGd4B5P3Kj7cC2YAcwgq8 K9cXyKe/DnvLx3v41DsqkA3I4bMTEyzyCDx/Ub5Ozj/5Nnxeg/cn5/sDWy5WbK/rhkiZvZXCiqJMy4P94d17tjI8h2uj86PKw30rvrV9GyyzrmWrq hrdMvlRpL s5GD7vNJvng3I4QNAiVtuHlbK6c8lHaOtj1Z5e0I BGh5uQPkljL7AxtULALeCIAxmMK5wgoHMsCKAZ/wC0SKtPSXJSPt81LfeV4gTxhWAFj JMHbrH8ikNkSQBzjyNZVBvC0gLw8MHq1Gcqt2N7eyghkgFUrwz 4hd 7uwK9K7K1Y7HR5PdbfSPtVZf0fCOQmvP71PEAGmA7G/cFyGXK4c8AEzhvA8yCH45VROOLuqcqHCRCZKBOCXNXn2f36rFv EA 1qEFNY25F68xbynTgJilQ 5CC8BdhQ8eJBy7p8EozHBuPIy56b7VROmMxev9bW2/1uF X2QDcjaLvc6wgYNbBwNnA1Cki8UaeemCB6EMi0Tc66HGvdVr3B NxYV9/siN3tO/r6/k4G5Dz2X47COnBMW2UgduOgdicI9fqq2DF2TqwI0cuF22Vi9cq GL5IBrlxc639xrUeX2YDcj5viDQgxUC7WLUc23qZ1sc77nWP/CjrTZD8Pf6GMBG4LTduMdoksN7f2tVm 7WL/b3IBuRp36KmlBPtWszwLepqUcSOKD8SBbIBGb/9NB8aomoTgTyzDw11OBk7pnwmCmQFcuXKE7zDR5WSQdbHOClZV nlWIENZfOhdH6zPirFeOpsdyFAlhBj4s/8p9pVbnRl1ndjUB4V6wW72jWQJMkIM/fHp7GHIucYsQYbggDk4s74OIGf Ztb3bEGmAoiZw9/x6QtaKMl7mWcPMkaN7qyvzHovGQ6/9EKAzOED0PoSQ6rxfuULBfL7NXT6bb0CAtmroeNsFRDI2Q6dOu 4VEMheDR1nq4BAznbo1HGvgED2aug4WwUEcrZDp457BQSyV0PH 2SogkLMdOnXcKyCQvRo6zlYBgZzt0KnjXgGB7NXQcbYKCORsh0 4d9woIZK GjrNVQCBnO3TquFdAIHs1dJytAgI526FTx70CAtmroeNsFRDI2 Q6dOu4VEMheDR1nq4BAznbo1HGvgED2aug4WwUEcrZDp457BQS yV0PH2Sowc5B/ uknU5IGfTMgkDXxFsJ4BLJAFshbW1t269Ytu379ug0GA8Os6Pu RovYUxoABObIceSHMRyALZIGs0EKP9eMS2smR5chyZDmyHFmOL CdcCCcUyAJZIM QAcXIMxSzzZ1a/0nlZ9 brpUatGmXel4gC RjMZlSgW0rJ5B7BPndu3f2wQcfmPKRDnwitQGael4g9wgyIQbI SiXMArkHAFPdYFw5DpbgPTiBqc04DcddlyP3MCE4WHLkOsjQg9 qMA3XcdYHcI8hy5DrI0EMg9wDgOBdIvc7Bmosj75y0oiiqtHTm lYvPd xksWRnXpWA7ZwsrDi5464fBG Wk1GOnBHEgJ0gzxKClLpenVmyojhpO9Xi8pWdWfKwOpABfI8Qs//UJtUU2soptOhhUnCw nVkQDtyW4Lz7tUZW6rgJsjIPfBH68Tsixy5B/jaZv405wkyB7CXvAasB7N05ZM7OFeCvBQDvnJxf /sj6nNNLr6e TIPUwKDlavjtwJMp0aIJfxcz12nj2wsckrR 4BPj/bD3tMkGODeXTnGDY0oKwBzjLMG2V7cGVqc1iN5cg9TAoOVq O/O6dtS32Ru7rAMZib mMveoBXk5eOXIP8B3WIfz9BJkD2GdewjzB9lvPMFMbr9c0x3Lk HiYFB6tvR 5zwkzTlhy5B/imcYW2ewjyNIO96PdQmzbtUs/LkXuYFBwsOXJ9MSlH7gG VCdIKUeQ4a6EWXn5uWxqk6JjV5mZOfKVK1f0lVktE4yDpbz9T7 u6IE25BpC//PJLu3jxYvj6tmvXrtmNGzfCV7ptbm5a8eTJE3v8 LE9evTIHj58aPfv37ednR27de a8DEMjtXw0ggNsBpjYpsHaV8SCDxSSQt7e3BXKL 3aJrWvtk/2w2kwFshz56AbksAP6vt4vkOWsC/H9Gh5kfMVxUmgRc2R9P7Jcep5PA4B89uxZu3TpUljsra vH1zsccGHxd6DBw/CYg9x8p07d/RF33L0Y HoBHl1ddXW1taMINfTtsSoRdiybI2LkQyHLgeTpws22AfO7cOS PI C8KN2/etArkp0 fWhvId /eDQU3NjbCLEBlzQb0WsD3wQDYO3/ vF2 fNmuXr1qYBL/FiQKcnMvGSBjsxkbz7hZIAvaPqCNtQH2Lly4YNxDJsjgEyFw4R 25CTLfFIGFY5UokAVyDLI zoE9vquHsALmSjeG4UZBxoIvFicLZIHcB7SxNsAe4mNEBgAZYQ XcGO8 B5B3d3dDjByLk7EN58MLVKYkDebFgN8/9m6MyKEAyLHwgttwDC8wAxCXIMRAhQi6sacHu0fsgkAcq0rs9e HDHV988YV9/vnnStIgmQEwA3bAEFgCU ALTszYmLsVjI1htNhhOwAyPkDE/WSGFyjMDxAhNkFlABr7eYAajQBsNNiEG51RkgYpDMAQAS4YAkt gCnyBM/BGiJtujMghgDzOlUE8YUYlcGcCjY1pNILYpQk24UanlKRBFwNg BQmmSHjBFPgCwIgGuG9MN0a0ADZhuFGQ6crNj3UCZmx1oCIAjY oBNBpBY4Tagw24laRBCgMAF wgNQH2e8ZgkCEF3DiA/OzZM6Mjt8XKKIgb6MyoCKEGgUYjhNqDTbjRKSVp0MUAWKHzgiE kMEWAwRqYi0GM9VxBkAkzdi 4g8F9ZW7HEWZYOkONGNAeanZKeTk40qHUAU9xJq8J2IkBDM7AH MMJOjHYRORQA7kJM0AeB3MMaIQdjKUxo5SkQQoD5AY5HZgAd0E MRgPI41y5CbMPNejOaIghBxqnU6NDStIghQFyg5whRAxg8Ecnp tkWz58/N4DcBbP/mz5U4EMNH254qAk2OqQkDVIYADNMYMmHET6U8BCDTaQAMmFGaM HEhV9bzNwGNBaESOyI8nJApEOaDuQHOeBtAtyEmHzWQPau3IyX/QLQhxoeaIYc7IDyciCkQ1wHD2tTI7DEEIKMYVHHUAIuTIiRVyD TlWMwe3emlbNCVI7ExnzOzigvB0U6dOvg2eEx SJv5I8Qg02kGshtMLe5MyplA8zZcBvc7KDycq0hHUY6eHbIE/MmwAAZADMU/j/5oLhYvzBy/QAAAABJRU5ErkJggg==

E aí jovem :)
Então, eu criei a coluna da maneira que disse. E de fato foi criado como tipo FLOAT e tamanho 53 no banco (dessa eu não sabia hahaha).
Mas no DEO ele não permite eu informar mais que 8 casas (na imagem eu coloquei máscara pra 10). E se eu informar mais de 8 casas, ele salva com 8 igual.
No seu código convertendo é pra funcionar quando obter via query, mas eu preciso que o DEO permita eu informar igual está criado o campo, pois o campo vai ser utilizado em telas, db(CJ)Grids e etc.

13999

Renato.Antonacci
30-Sep-2020, 05:45 AM
Bom dia.

Então, como eu falei, eu descobri essa questão aí do FLOAT na sorte. Conceitualmente eu não tenho a menor ideia de como funciona, pois nunca precisei usar aqui. Só tive a necessidade agora de ler umas informações de uma banco estrangeiro e me deparei com esse problema, porque via query vinha esse valor que deve ser convertido. Com aquela função eu consegui converter para 8 casas decimais (rsrs) e gravar em uma tabela minha. Gostaria de aprender mais sobre isso, mas a correria de agora não permite. Se por acaso descobrir a solução e puder compartilhar aqui, será muito bem vindo.

Abraço,

uandzleonel
1-Oct-2020, 08:53 AM
Bom dia,

Pessoal, eu perguntei (https://support.dataaccess.com/Forums/showthread.php?66390-MSSQLDRV-Numeric-precision) no fórum inglês e falaram que o tamanho máximo da precisão decimal é 8 mesmo.
Então pra contornar o problema seria criar o campo como char/varchar e tratar ele como número (colocar máscara de número e etc).

Agradeço a todos