Pular para o conteúdo principal

Postagens

Mostrando postagens de outubro, 2016
Esses dias estava precisando montar algo para apresentar o tempo que uma determinada rotina, uma parte eu pesquisei e consegui um função pronta, outra parte foi montada. Compartilhando abaixo a idéia. /*/{Protheus.doc} TempRest Exemplo de chamada da função. ** Fonte não compilado, pode haver erros de sintaxe. /*/ User Function APrefHR() Local nTimeIni := Seconds() Local nI := 1 Local nFim = 50000 For Ni := 1 To nFIm conout(U_TempRest(nI, nFim,nTimeIni)[4]) Next Return Nil /*/{Protheus.doc} TempRest Faz o calculo de tempo restante para um processo @author TSC679 - CHARLES REITZ @since 12/07/2016 @param nTotaisP, numeric, descricao @param nIncrement, numeric, descricao @param nTimeIni, numeric, descricao @return return, return_description /*/ User Function TempRest(nTotaisP,nIncrement,nTimeIni) Local cTempoRest := "" Local nHoraRest := 0 LOcal nSecAtual := seconds() Local aRetFun := {nil,nil,nil,ni
Outro exemplo de exclusão de registro duplicado, buscando o maior registro. BEGIN TRAN DECLARE @ID VARCHAR(500) DECLARE @CONT int DECLARE CUR_DELETE CURSOR FOR SELECT A1_FILIAL+A1_CGC FROM SA1200 WHERE D_E_L_E_T_ = ' ' GROUP BY A1_FILIAL+A1_CGC HAVING COUNT(*) > 1 OPEN CUR_DELETE FETCH NEXT FROM CUR_DELETE INTO @ID WHILE @@FETCH_STATUS = 0 BEGIN UPDATE SA1200 SET D_E_L_E_T_ = '*' WHERE R_E_C_N_O_ = (Select max(R_E_C_N_O_) From SA1200 t2 Where A1_FILIAL+A1_CGC = @ID ) FETCH NEXT FROM CUR_DELETE INTO @ID END