|
FORUMS PROFESSIONNELS WINDEV, WEBDEV et WINDEV Mobile |
| | | | | |
WX - Metodo Groupware para Webdev |
Débuté par BOLLER, 25 mai 2017 21:58 - 2 réponses |
| |
| | | |
|
| |
Membre enregistré 3 657 messages Popularité : +175 (223 votes) |
|
Posté le 25 mai 2017 - 21:58 |
Metodo Groupware para Webdev
O projeto Groupware deve remover [x] unicode de todos os campos e variáveis
Procedure GPW_LoginPassword( gLogin is string, gPassword is string )
NextTitle("Atenção") ok0, ok1, ok2, ok3, ok4, ok5, ok6, ok7, ok8, LoginOK is boolean
sGsPaginaInicial is string = "PAGE_Logado"
nReturnedValue is int = 0
gpwUser is Data Source
HReadSeekFirst(GPU_ConfigDatabase,DatabaseID,1,hKeepFilter) IF HFound(GPU_ConfigDatabase)
IF GPU_ConfigDatabase.DriverDatabase = "WinDevClientServeurHF" CNT_GPW..Provider = hAccessHFClientServer ELSE IF GPU_ConfigDatabase.DriverDatabase = "WinDevOledbSQLServer" CNT_GPW..Provider = hOledbSQLServer ELSE CNT_GPW..Provider = hNativeAccessSQLServer END CNT_GPW..User = GPU_ConfigDatabase.UserDataBase CNT_GPW..Password = GPU_ConfigDatabase.PassWordDataBase CNT_GPW..Source = GPU_ConfigDatabase.DataSource CNT_GPW..Database = GPU_ConfigDatabase.DatabaseName CNT_GPW..CryptMethod = hCryptNo
ELSE ok0 = True CNT_GPW..Provider = hNativeAccessSQLServer CNT_GPW..User = "adriano" CNT_GPW..Password = "29121974" CNT_GPW..Source = "192.168.0.1\projeto" CNT_GPW..Database = "projeto_catalogo" CNT_GPW..CryptMethod = hCryptNo HAdd(GPU_ConfigDatabase) END
ok1 = gpwOpenConnection(CNT_GPW)
ok2 = HOpenConnection(CNT_GPW) IF ok2 = False THEN Info(ErrorOccurred() +" - "+ HErrorInfo()) END
ok3 = HChangeConnection(gpwUser,CNT_GPW)
IF ErrorInfo() > 0 OR ok3 = False Error(HErrorInfo() + CR + ErrorInfo()) END
gsLoginUser = gLogin
gsSENHA_Criptografada is string = SET_GPU_News.GPW_StringToInteger(gPassword)
IF ok1 = True AND ok2 = True AND ok3 = True IF gpwInitAnalysis() = False THEN Error(ErrorInfo()) ok5 = False ELSE ok5 = True ok4 = HExecuteQuery(QRY_GPU_User_Login,CNT_GPW,hQueryWithoutCorrection,"'"+gsLoginUser+"'") IF ok4 = True FOR EACH QRY_GPU_User_Login IF HFound(QRY_GPU_User_Login) = True AND QRY_GPU_User_Login.Login = gsLoginUser AND QRY_GPU_User_Login.Password = gsSENHA_Criptografada OR HFound(QRY_GPU_User_Login) = True AND QRY_GPU_User_Login.Login = Upper(gsLoginUser) AND QRY_GPU_User_Login.Password = gsSENHA_Criptografada LoginOK = True gsSenha = SET_GPU_News.GPW_IntegerToString(GPU_User.Password) gnUserID = QRY_GPU_User_Login.UserID gsLoginUser = QRY_GPU_User_Login.Login gsSenhaCript = QRY_GPU_User_Login.Password gbIsSupervisor = QRY_GPU_User_Login.Supervisor gsCNPJ = QRY_GPU_User_Login.CNPJ gsGPU_UserCompany = QRY_GPU_User_Login.Company gsGPU_UserInscEstadual = QRY_GPU_User_Login.InscEstadual gsGPU_UserInscMunicipal = QRY_GPU_User_Login.InscMunicipal gsGPU_UserTrial = QRY_GPU_User_Login.Trial gsGPU_UserCounter = QRY_GPU_User_Login.Counter gsGPU_UserDataSource = QRY_GPU_User_Login.DatabaseName gsGPU_UserPortaDB = QRY_GPU_User_Login.PortaDB gsGPU_UserDatabaseName = QRY_GPU_User_Login.DatabaseName gsGPU_UserUserDataBase = QRY_GPU_User_Login.UserDataBase gsGPU_UserPassWordDataBase = QRY_GPU_User_Login.PassWordDataBase END END END nRes is int = gpwCheckUser(gsLoginUser,gsSENHA_Criptografada) IF nRes = 0 AND LoginOK = True ok6 = True nReturnedValue = gpwConnectUser(gsLoginUser, gsSENHA_Criptografada) IF nReturnedValue <> gpwOk AND nReturnedValue <> 0 THEN SWITCH nReturnedValue CASE gpwError: Error("Unable to connect.") CASE gpwUnknownUser, gpwInvalidPassword: Error("Usuário inválido ou senha.") END ok7 = False ToastDisplay("Login ou senha não encontrado",toastLong,vaBottom,haCenter) ELSE IF nReturnedValue = gpwOk OR nReturnedValue = 0 GPU_ConnectionHistory.ConnectionDate = DateSys() GPU_ConnectionHistory.ConnectionTime = TimeSys() GPU_ConnectionHistory.TargetID = 1 GPU_ConnectionHistory.UserID = gnUserID ok7 = HAdd(GPU_ConnectionHistory) IF ok7 = False THEN ToastDisplay("Erro ao registrar o log de acesso",toastLong,vaMiddle,haCenter) END ok8 = gpwGetUserInfo(gpwInfoSupervisor) IF ok8=True AND gsLoginUser = "SUPERVISOR-ASPLAN" THEN ok1 = gpwOpenConnection(CNT_GPW) ok2 = HOpenConnection(CNT_GPW) IF ok2 = False THEN Info(ErrorOccurred() +" - "+ HErrorInfo()) END ok3 = HChangeConnection("*",CNT_GPW) IF ErrorInfo() > 0 OR ok3 = False Error(HErrorInfo() + CR + ErrorInfo()) ELSE PageDisplay(PAGE_GPU_UsersAndGroups) END ELSE IF ok8 = True AND gsLoginUser <> "SUPERVISOR" ok1 = gpwOpenConnection(ConnAsplan360) ok2 = HOpenConnection(ConnAsplan360) IF ok2 = False THEN Info(ErrorOccurred() +" - "+ HErrorInfo()) END ok3 = HChangeConnection("*",ConnAsplan360) IF ErrorInfo() > 0 OR ok3 = False Error(HErrorInfo() + CR + ErrorInfo()) ELSE PageDisplay(PAGE_Default) END ELSE ToastDisplay("Usuário não localizado",toastLong,vaBottom,haCenter) END END ELSE ToastDisplay("Login ou senha não encontrado",toastLong,vaBottom,haCenter) END END ELSE ToastDisplay("Erro na Conexao com Groupware!",toastLong,vaBottom,haCenter) END
-- Adriano José Boller ______________________________________________ Consultor e Representante Oficial da PcSoft no Brasil +55 (41) 99949 1800 adrianoboller@gmail.com skype: adrianoboller http://wxinformatica.com.br/Message modifié, 25 mai 2017 - 21:59 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 657 messages Popularité : +175 (223 votes) |
|
Posté le 25 mai 2017 - 22:03 |
Usando Webservice
Procedure GPW_LoginPasswordWS(gLogin is string,gPassword is string )
nReturnedValue is int= 0 gsSENHA_Criptografada is string sGsPaginaInicial is string = "PAGE_Logado" sValorRetXml is string XsdRetLogin is xmlDocument LoginOK is boolean
ok0 = True CNT_GPW..Provider = hNativeAccessSQLServer CNT_GPW..User = "adriano" CNT_GPW..Password = "29121974" CNT_GPW..Source = "192.168.0.1\projeto" CNT_GPW..Database = "projeto_catalogo" CNT_GPW..CryptMethod = hCryptNo HAdd(GPU_ConfigDatabase)
IF gpwOpenConnection(CNT_GPW) THEN gsLoginUser = gLogin gsSENHA_Criptografada = SET_GPU_News.GPW_StringToInteger(gPassword) IF gpwInitAnalysis() = True THEN ValidaLoginResult is ValidarLoginResponse ValidaLoginResult = ValidarLogin(gLogin,gsSENHA_Criptografada) sValorRetXml = ValidaLoginResult.ValidarLoginResult..Value XsdRetLogin = XMLOpen(Replace(NoAccent(sValorRetXml),"'",""),fromString) GPW_CarregaVariaveis(XsdRetLogin.RetWs.InfoUsu) IF gpwCheckUser(gsLoginUser,gsSENHA_Criptografada) = gpwOk nReturnedValue = gpwConnectUser(gsLoginUser, gsSENHA_Criptografada) IF nReturnedValue = gpwOk THEN GPW_InserirHistConx() IF gpwGetUserInfo(gpwInfoSupervisor) = True THEN
PageDisplay(PAGE_GPU_UsersAndGroups) ELSE PageDisplay(PAGE_Default) END END END
END
END
-- Adriano José Boller ______________________________________________ Consultor e Representante Oficial da PcSoft no Brasil +55 (41) 99949 1800 adrianoboller@gmail.com skype: adrianoboller http://wxinformatica.com.br/Message modifié, 25 mai 2017 - 22:06 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 657 messages Popularité : +175 (223 votes) |
|
Posté le 25 mai 2017 - 22:13 |
Procedure ValidarLogin(sEmail is string, sSenha is string) bLogin is boolean = False clUsuario is Usuario sRetXml is string arrResultado is array of string
QRY_GPU_User_Login.pEmail = sEmail QRY_GPU_User_Login.pSenha = sSenha
IF HExecuteQuery(QRY_GPU_User_Login,ConnCatalogo,hQueryDefault) FOR EACH QRY_GPU_User_Login IF HFound(QRY_GPU_User_Login) = True THEN bLogin = True clUsuario.nUserID = QRY_GPU_User_Login.UserID clUsuario.sLoginUser = QRY_GPU_User_Login.Login clUsuario.bIsSupervisor = QRY_GPU_User_Login.Supervisor clUsuario.nCNPJ = QRY_GPU_User_Login.CNPJ clUsuario.sGPU_UserCompany = QRY_GPU_User_Login.Company clUsuario.bGPU_UserTrial = QRY_GPU_User_Login.Trial clUsuario.sGPU_UserDataSource = QRY_GPU_User_Login.DataSource clUsuario.nGPU_UserPortaDB = QRY_GPU_User_Login.PortaDB clUsuario.sGPU_UserDatabaseName = QRY_GPU_User_Login.DatabaseName clUsuario.sGPU_UserUserDataBase = QRY_GPU_User_Login.UserDataBase clUsuario.sGPU_UserPassWordDataBase = QRY_GPU_User_Login.PassWordDataBase END END HFreeQuery(QRY_GPU_User_Login) END sRetXml = ws_MontaRetValidarLogin(bLogin,clUsuario)
Add(arrResultado,sRetXml)
RESULT arrResultado
-- Adriano José Boller ______________________________________________ Consultor e Representante Oficial da PcSoft no Brasil +55 (41) 99949 1800 adrianoboller@gmail.com skype: adrianoboller http://wxinformatica.com.br/ |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|