- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- FUNÇÃO DESEMBARALHA ( E2_USERLGI)
×
Linguagem de Programação ADVPL
Perguntas FUNÇÃO DESEMBARALHA ( E2_USERLGI)
- cmkas
- Autor do Tópico
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 42
- Obrigados Recebidos: 0
8 anos 9 meses atrás #30100
por cmkas
FUNÇÃO DESEMBARALHA ( E2_USERLGI) foi criado por cmkas
FUNÇÃO DESEMBARALHA
Estou usando o código abaixo para simular o retorno da função desembaralha num SELECT.
Preciso saber a data da inclusão do título, gravada cryptografada no campo E2_USERLGI.
Contudo em alguns registros está retornando errado, mesmo em títulos após 2010.
Alguém teria um código que está ok.
Obrigado.
cmkas
SELECT CASE WHEN E2_USERLGI = ‘‘ THEN E2_EMIS1
ELSE
CONVERT(VARCHAR(10), CAST(‘1996-01-01‘ AS DATETIME) + CAST(CAST(ASCII(SUBSTRING(E2_USERLGI, 12, 1)) - 50 AS VARCHAR) + CAST(ASCII(SUBSTRING(E2_USERLGI, 16, 1)) - 50 AS VARCHAR) AS INTEGER), 112) END AS DATAINC
FROM dbo.SE2010
Estou usando o código abaixo para simular o retorno da função desembaralha num SELECT.
Preciso saber a data da inclusão do título, gravada cryptografada no campo E2_USERLGI.
Contudo em alguns registros está retornando errado, mesmo em títulos após 2010.
Alguém teria um código que está ok.
Obrigado.
cmkas
SELECT CASE WHEN E2_USERLGI = ‘‘ THEN E2_EMIS1
ELSE
CONVERT(VARCHAR(10), CAST(‘1996-01-01‘ AS DATETIME) + CAST(CAST(ASCII(SUBSTRING(E2_USERLGI, 12, 1)) - 50 AS VARCHAR) + CAST(ASCII(SUBSTRING(E2_USERLGI, 16, 1)) - 50 AS VARCHAR) AS INTEGER), 112) END AS DATAINC
FROM dbo.SE2010
Por favor Acessar ou Registrar para participar da conversa.
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
8 anos 9 meses atrás #30101
por kanaamlrr
Respondido por kanaamlrr no tópico FUNÇÃO DESEMBARALHA ( E2_USERLGI)
Tenta com esse:
SELECT
SUBSTRING(A1_USERLGI,11,1) + SUBSTRING(A1_USERLGI,15,1) + SUBSTRING(A1_USERLGI,2,1) +
SUBSTRING(A1_USERLGI,6,1) + SUBSTRING(A1_USERLGI,10,1) + SUBSTRING(A1_USERLGI,14,1) ,
CONVERT(VARCHAR(10),
CAST(DATEADD(DAY,CONVERT(INT,
Convert(nvarchar(50),(ASCII(SUBSTRING(A1_USERLGI,12,1)) - 50))+Convert(nvarchar(50),(ASCII(SUBSTRING(A1_USERLGI,16,1)) - 50))),
'1996-01-01') AS DATETIME),103),
SUBSTRING(A1_USERLGA,11,1) + SUBSTRING(A1_USERLGA,15,1) + SUBSTRING(A1_USERLGA,2,1) +
SUBSTRING(A1_USERLGA,6,1) + SUBSTRING(A1_USERLGA,10,1) + SUBSTRING(A1_USERLGA,14,1) ,
CONVERT(VARCHAR(10),
CAST(DATEADD(DAY,CONVERT(INT,
Convert(nvarchar(50),(ASCII(SUBSTRING(A1_USERLGA,12,1)) - 50))+Convert(nvarchar(50),(ASCII(SUBSTRING(A1_USERLGA,16,1)) - 50))),
'1996-01-01') AS DATETIME),103),
* FROM SA1010 WHERE A1_COD = '213584 '
Por favor Acessar ou Registrar para participar da conversa.
- cmkas
- Autor do Tópico
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 42
- Obrigados Recebidos: 0
8 anos 9 meses atrás #30121
por cmkas
Respondido por cmkas no tópico FUNÇÃO DESEMBARALHA ( E2_USERLGI)
Kanaãn,
Obrigado por responder.
Fiz o teste com sua dica,
contudo tem vários títulos de 2015 (várias datas) que aparecem como sendo 17/12/1997.
Tem idéia do que pode ser ???
Obrigado por responder.
Fiz o teste com sua dica,
contudo tem vários títulos de 2015 (várias datas) que aparecem como sendo 17/12/1997.
Tem idéia do que pode ser ???
Por favor Acessar ou Registrar para participar da conversa.
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
- cmkas
- Autor do Tópico
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 42
- Obrigados Recebidos: 0
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
8 anos 9 meses atrás #30125
por kanaamlrr
Respondido por kanaamlrr no tópico FUNÇÃO DESEMBARALHA ( E2_USERLGI)
Cara,
parece que realmente essa é a data que está gravada no campo.
Agora não sei o porque de ter gravado com essa data.
At.,
Kanaãm.
parece que realmente essa é a data que está gravada no campo.
Agora não sei o porque de ter gravado com essa data.
At.,
Kanaãm.
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- FUNÇÃO DESEMBARALHA ( E2_USERLGI)
Tempo para a criação da página:0.119 segundos