× Linguagem de Programação ADVPL

Perguntas Rotina Facilitadora de atualização do Protheus (UPD)

Mais
10 anos 6 meses atrás #23110 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

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.096 segundos
Joomla templates by a4joomla