- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Rotina Facilitadora de atualização do Protheus (UPD)
×
Linguagem de Programação ADVPL
Perguntas Rotina Facilitadora de atualização do Protheus (UPD)
- mugois
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 3
- Obrigados Recebidos: 0
10 anos 6 meses atrás #23110
por mugois
Rotina Facilitadora de atualização do Protheus (UPD) foi criado por mugois
Bom dia Galera, estou sempre utilizando informações do forum, nada mais justo dar uma contribuição também.
Segue um programa simples que facilita muito a aplicação dos UPD´s na atualização do sistema:
#include "rwmake.ch"
#include "topconn.ch"
#INCLUDE "PROTHEUS.CH"
#INCLUDE "TBICONN.CH"
User Function MGUPD()
Private oGera2
cUpd := SPACE(15)
cTCP := SPACE(30)
cTexto := "Informe as iniciais do UPDATE - EXEMPLO: UPDCOM | UPDEST"
@ 200,1 TO 400,400 DIALOG oGera2 TITLE OemToAnsi("Aplicação dos Updates")
@ 10,018 Say cTexto PIXEL OF oGera2
@ 70,018 MSGET oVar VAR cUpd Picture "@!" SIZE 060,10 PIXEL OF oGera2
@ 10,018 Say cTexto PIXEL OF oGera2
@ 70,018 MSGET oVar VAR cUpd Picture "@!" SIZE 060,10 PIXEL OF oGera2
@ 80,170 BMPBUTTON TYPE 01 ACTION {Close(oGera2)}
Activate Dialog oGera2 Centered
cUpd := Alltrim(cUpd)
IF Alltrim(cUpd) == ""
Alert("Não foi informado um UPDATE!")
Return
EndIf
If MsgBox("Será iniado a execução dos UPDs. Deseja continuar?","Atenção","YESNO")
//cUpd := "UPDO"
aType := {}
aFile := {}
aLine := {}
aDate := {}
aTime := {}
cLog := ""
cLocSmart := Alltrim(GetClientDir()) //Path do arquivo smartclient no remote
cTCP := "TCP"
cAmbiente := GetEnvServer()//"DEV_EDI"
cNomFunc := "U_"+cUpd+"*"
cProgCli := "smartclient.exe"
aRet := GetFuncArray(cNomFunc, @aType, @aFile, @aLine, @aDate, @aTime)
For nCont := 1 To Len(aRet)
If MsgBox("Executa "+aRet[nCont]+"?","Atenção","YESNO")
WinExec(cLocSmart+cPROgCli+" -P="+aRet[nCont]+" -C="+cTCP+" -E="+cAmbiente+" -M")
cLog += aRet[nCont] +";"
EndIf
Next
cArq := "E:\UPDATES_"+cUpd+".TXT"
MemoWrite(cArq,cLog)
MsgBox("Compatibilizadores executados com sucesso! Foi gravado o LOG "+cArq,"Processo finalizado.","INFO")
EndIf
Return
Segue um programa simples que facilita muito a aplicação dos UPD´s na atualização do sistema:
#include "rwmake.ch"
#include "topconn.ch"
#INCLUDE "PROTHEUS.CH"
#INCLUDE "TBICONN.CH"
User Function MGUPD()
Private oGera2
cUpd := SPACE(15)
cTCP := SPACE(30)
cTexto := "Informe as iniciais do UPDATE - EXEMPLO: UPDCOM | UPDEST"
@ 200,1 TO 400,400 DIALOG oGera2 TITLE OemToAnsi("Aplicação dos Updates")
@ 10,018 Say cTexto PIXEL OF oGera2
@ 70,018 MSGET oVar VAR cUpd Picture "@!" SIZE 060,10 PIXEL OF oGera2
@ 10,018 Say cTexto PIXEL OF oGera2
@ 70,018 MSGET oVar VAR cUpd Picture "@!" SIZE 060,10 PIXEL OF oGera2
@ 80,170 BMPBUTTON TYPE 01 ACTION {Close(oGera2)}
Activate Dialog oGera2 Centered
cUpd := Alltrim(cUpd)
IF Alltrim(cUpd) == ""
Alert("Não foi informado um UPDATE!")
Return
EndIf
If MsgBox("Será iniado a execução dos UPDs. Deseja continuar?","Atenção","YESNO")
//cUpd := "UPDO"
aType := {}
aFile := {}
aLine := {}
aDate := {}
aTime := {}
cLog := ""
cLocSmart := Alltrim(GetClientDir()) //Path do arquivo smartclient no remote
cTCP := "TCP"
cAmbiente := GetEnvServer()//"DEV_EDI"
cNomFunc := "U_"+cUpd+"*"
cProgCli := "smartclient.exe"
aRet := GetFuncArray(cNomFunc, @aType, @aFile, @aLine, @aDate, @aTime)
For nCont := 1 To Len(aRet)
If MsgBox("Executa "+aRet[nCont]+"?","Atenção","YESNO")
WinExec(cLocSmart+cPROgCli+" -P="+aRet[nCont]+" -C="+cTCP+" -E="+cAmbiente+" -M")
cLog += aRet[nCont] +";"
EndIf
Next
cArq := "E:\UPDATES_"+cUpd+".TXT"
MemoWrite(cArq,cLog)
MsgBox("Compatibilizadores executados com sucesso! Foi gravado o LOG "+cArq,"Processo finalizado.","INFO")
EndIf
Return
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Rotina Facilitadora de atualização do Protheus (UPD)
Tempo para a criação da página:0.096 segundos