Histórico da Página
...
| Bloco de código | ||
|---|---|---|
| ||
#INCLUDE "Totvs.ch" User Function F887FPG() Local cUser := PARAMIXB[1] //Parámetro en el cual se obtiene el nombre del usuario logueado Local cUseriD := PARAMIXB[2] //Parámetro en el cual se obtiene el ID del usuario logueado Local cWhere := PARAMIXB[3] //Where del Query que se utiliza para obtener los títulos en Panel General Local cAlias := getNextAlias() Local aSAQS := {} As Array Local cCobrador := "" As Character Local cCobradorcQryFields := "" As Character Local cQryWhere qryFields := "" As Character Local qryWhere Local cQuery := "" As Character Local nX := 0 As Numeric Local cAuxWhere := "" As Character //Definimos los campos a retornar en la instrucción SQL qryFields cQryFields := "AQ_COD,AQ_NOME" //Definimos la condición, en este caso de que el código del campo usuario sea igual al ID del usuario logueado qryWhere cQryWhere := " AQ_CODUSR ='"+ cUseriD +"' " //Definimos la estructura de la intrucción SQL a ejecutar query cQuery := "SELECT "+ qryFieldscQryFields +" FROM "+ retSqlName("SAQ") +" WHERE "+ qryWherecQryWhere //Ejecutamos la intrucción query cQuery := changeQuery(querycQuery) mpSysOpenQuery(querycQuery, cAlias) (cAlias)->(DbGoTop()) While (cAlias)->(!Eof()) IF aScan(aSAQS,(cAlias)->AQ_COD) == 0 //Instrucción para no repetir cobradores en el array aadd(aSAQS,(cAlias)->AQ_COD) //Agrega en un array los cobradores asociados con el cliente logueado ENDIF (cAlias)->(dbSkip()) ENDDO (cAlias)->(dbCloseArea()) //Preparamos la cadena que se retornara con los cobradores IF !VAZIO(aSAQS) FOR nX := 1 To LEN(aSAQS) cCobrador += " E1_COBRAD =" + aSAQS[nX] IF nX < LEN(aSAQS) cCobrador += " OR " ENDIF NEXT ELSE //Opcional (En caso de que no tenga cobradores asociados) cCobrador := "E1_COBRAD = 'ZZZZZ'" ENDIF cAuxWhere := cWhere +' AND ( '+cCobrador+' )' Return cAuxWhere |
04. ASUNTOS RELACIONADOS
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas