|
Bem Vindo, Visitante
|
Todos os Fórums
ADVPL
|
Imprimir
Enviar Para um Amigo Precisa estar Logado
|
|
|
Assunto: |
Adicionar informação em fonte advpl |
|
Versão: |
12.1.33 |
|
Plataforma: |
Microsoft |
Complemento: |
|
|
DB: |
SQL Server |
Complemento: |
|
|
|
|
|
Mensagem do
ANDERSON.V
em 18/07/2022, 14:32 h
Local: SP Registro: 08/07/2022 Postagens: 3 |
Gostaria de adicionar o mês nesse fonte
hoje ele me traz resultado 000001/2020
Gostaria de adicionar o mês ficando 000001.08/2022
User Function zCodAno(cTab, cCampo, dData, cSep, nTamAno, lSoma1)
Local aArea := GetArea()
Local cCodFull := ""
Local cCodAux := ""
Local cAno := ""
Local cQuery := ""
Local nTamCampo := 0
Default dData := dDataBase
Default cSep := "/"
Default nTamAno := 2
Default lSoma1 := .F.
//Se o tamanho do ano for menor que 2 ou maior que 4, será 2
If nTamAno < 2 .Or. nTamAno > 4
nTamAno := 2
EndIf
//Definindo o código atual
nTamCampo := TamSX3(cCampo)[01]
cCodAux := Space(nTamCampo-(nTamAno+1))
cCodAux := StrTran(cCodAux, ‘ ‘, ‘0‘)
//Definindo o ano
cAno := dToS(dDataBase)
cAno := SubStr(cAno, 5-nTamAno, nTamAno)
//Faço a consulta para pegar as informações
cQuery := " SELECT "
cQuery += " ISNULL(MAX(SUBSTRING("+cCampo+", 1, "+cValToChar(nTamCampo - (nTamAno+1))+")), ‘"+cCodAux+"‘) AS MAXIMO "
cQuery += " FROM "
cQuery += " "+RetSQLName(cTab)+" TAB "
cQuery += " WHERE "
cQuery += " SUBSTRING(TAB."+cCampo+", "+cValToChar(nTamCampo+1 - nTamAno)+", "+cValToChar(nTamAno)+") = ‘"+cAno+"‘ "
cQuery += " AND TAB.D_E_L_E_T_ = ‘‘ "
cQuery := ChangeQuery(cQuery)
TCQuery cQuery New Alias "QRY_TAB"
//Se não tiver em branco
If !Empty(QRY_TAB->MAXIMO)
cCodAux := QRY_TAB->MAXIMO
EndIf
//Se for para atualizar, soma 1 na variável
If lSoma1
cCodAux := Soma1(cCodAux)
EndIf
//Definindo o código de retorno
cCodFull := cCodAux + cSep + cAno
QRY_TAB->(DbCloseArea())
RestArea(aArea)
Return cCodFull
|
|
Para postar no Fórum você precisa efetuar o seu login ou se registrar
|
|