123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154 |
- //-----------------------------------------------------
- // Função ORCA1035. Etapas da Negociação.
- // Ativado pela tecla <F6> na Alteração do Orçamento.
- // Solicitante: Comercial.
- // Autor: Fonseca.
- // Data: 01-04-2015.
- //-----------------------------------------------------
- #include "Protheus.ch"
- #include "Rwmake.ch"
- #include "Topconn.ch"
-
- User Function ORCA1035()
- Local aArea := GetArea()
- Local _aBrowse := {}
- Local aButtons := {}
- Private _nOpca := 0
- Private bOk := {|| _nOpca:=1,Sair()}
- Private bCancel := {|| _nOpca:=0,Sair()}
- Private aFields := {}
- Private _cOrcamen := " "
- Private oFont1 := TFont():New("Calibri",,018,,.T.,,,,,.F.,.F.)
- Private oBrwTrb
- Private oDlg
- Private cAlias as char
- Private oTable as object
-
- If INCLUI
- RestArea(aArea)
- Return()
- EndIf
-
- If FunName() <> "MATA415" // Orçamento.
- RestArea(aArea)
- Return()
- EndIf
-
- _cOrcamen := SCJ->CJ_NUM //M->CJ_NUM
-
- oTable := FWTemporaryTable():New()
-
- // Cria a Estrutura da Temporaria.
- aadd(aFields,{"TDATA" ,"D",008,0})
- aadd(aFields,{"THORA" ,"C",005,0})
- aadd(aFields,{"USUARIO" ,"C",020,0})
- aadd(aFields,{"ORCAMEN" ,"C",006,0})
- aadd(aFields,{"HISTORICO","C",250,0})
- oTable:SetFields(aFields)
- // Define os Campos do MsSelect - O que vai ser Mostrado no Browse.
- aadd(_aBrowse,{"TDATA" ,,"Data" })
- aadd(_aBrowse,{"THORA" ,,"Hora" })
- aadd(_aBrowse,{"USUARIO" ,,"Usuario" })
- aadd(_aBrowse,{"ORCAMEN" ,,"Orçamento"})
- aadd(_aBrowse,{"HISTORICO",,"Historico"})
- oTable:AddIndex("1", {"TDATA", "THORA"})
- oTable:Create()
- cAlias := oTable:GetAlias()
- MontaTemp()
- (cAlias)->(dbSetOrder(1))
-
- aAdd(aButtons,{"",{||ORCA1035A()},"","Incluir Etapa"})
-
- @ 001,001 TO 600,1700 DIALOG oDlg TITLE OemToAnsi("Etapas da Negociação..")
- oBrwTrb := MsSelect():New((cAlias),"","",_aBrowse,,,{035,004,283,848},,,,,)
- Eval(oBrwTrb:oBrowse:bGoTop)
- oBrwTrb:oBrowse:Refresh()
- Activate MsDialog oDlg On Init (EnchoiceBar(oDlg,bOk,bCancel,,aButtons)) Centered
-
- RestArea(aArea)
- Return()
- Static Function MontaTemp()
- If Select("QRY") > 0
- dbSelectArea("QRY")
- dbCloseArea("QRY")
- Endif
- cQuery := "SELECT * FROM " + RetSQLName("SZW") + " WHERE ZW_FILIAL = '" + xFilial("SCJ") + "' AND "
- cQuery += "ZW_ORCAMEN = '" + Trim(_cOrcamen) + "' AND " + RetSQLName("SZW") + ".D_E_L_E_T_ = ' ' "
- cQuery += "ORDER BY ZW_DATA, ZW_HORA, R_E_C_N_O_ "
- TcQuery cQuery New Alias "QRY"
-
- While QRY->(!EOF())
- RecLock((cAlias),.T.)
- (cAlias)->TDATA := StoD(QRY->ZW_DATA)
- (cAlias)->THORA := QRY->ZW_HORA
- (cAlias)->USUARIO := QRY->ZW_USUARIO
- (cAlias)->ORCAMEN := QRY->ZW_ORCAMEN
- (cAlias)->HISTORICO := QRY->ZW_HISTOR
- MsUnlock()
- QRY->(DbSkip())
- EndDo
- Return
-
- Static Function Sair()
- If _nOpca <> 0
- M->CJ_USUAETA := (cAlias)->USUARIO
- M->CJ_ATUALIZ := DDATABASE
- EndIf
- oTable:Delete()
- If Select("QRY") > 0
- dbSelectArea("QRY")
- dbCloseArea("QRY")
- Endif
- oDlg:END()
- Return
- //-----------------------------------------------------------
- // Inclusão do Histórico do Cliente.
- //-----------------------------------------------------------
- Static Function ORCA1035A()
- Private cTexto := Space(250)
- Private oFont1 := TFont():New("Calibri",,016,,.F.,,,,,.F.,.F.)
- Private oFont2 := TFont():New("Calibri",,016,,.T.,,,,,.F.,.F.)
- Private oButton1
- Private oGet1
- Private oSay1
- Private oDlg1
- DEFINE MSDIALOG oDlg1 TITLE "Etapa da Negociação - Incluir.." FROM 000,000 TO 150,330 COLORS 0,16777215 PIXEL
- @ 017,005 SAY oSay1 PROMPT "Texto: " SIZE 050,012 OF oDlg1 COLORS 0,16777215 FONT oFont1 PIXEL
- @ 013,038 MSGET oGet1 VAR cTexto SIZE 128,012 OF oDlg1 PICTURE "@!" COLORS 0,16777215 FONT oFont2 PIXEL
- @ 060,120 BUTTON oButton1 PROMPT "Gravar" SIZE 040,012 ACTION Gravar() OF oDlg1 PIXEL
- ACTIVATE MSDIALOG oDlg1 CENTERED
- Return()
- Static Function Gravar()
- // Gravar SZW.
- RecLock("SZW",.T.)
- ZW_FILIAL := Trim(cFilAnt)
- ZW_DATA := DDATABASE
- ZW_HORA := LEFT(TIME(),5)
- ZW_HISTOR := Trim(cTexto)
- ZW_USUARIO := Trim(cUserName)
- ZW_ORCAMEN := _cOrcamen
- MsUnlock()
- // Gravar Temporaria - Permite atualizar o Browse.
- RecLock((cAlias),.T.)
- (cAlias)->TDATA := DDATABASE
- (cAlias)->THORA := LEFT(TIME(),5)
- (cAlias)->USUARIO := Trim(cUserName)
- (cAlias)->ORCAMEN := _cOrcamen
- (cAlias)->HISTORICO := Trim(cTexto)
- MsUnlock()
-
- oDlg1:END()
- Return()
|