Ir para conteúdo
Fórum Script Brasil

filipe.sistemas

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre filipe.sistemas

filipe.sistemas's Achievements

0

Reputação

  1. Olá bom dia a todos, Atualmente programo em C, estou começando agora a programar em VB, gostaria de uma orientação para programar em ScriptReport, se teria alguma apostila postada no forum falando sobre criação de relatórios. Gostaria de desenvolver para esse relatório Option Explicit Dim Posicao As Date Dim QParcelas As Object Dim QMov As Object Dim valor As Currency Dim dias As Long Dim s As String Dim s1 As String Dim r As Object Dim t As String Public Sub REPORT_BeforePrint(PrintReport As Boolean) Set QParcelas = REPORT.QueryByName("FN_PARCELAS") s = "SELECT SUM(VALORESBAIXADOS) BAIXAS FROM FN_PARCELAS WHERE HANDLE = :PARCELA AND VCTOPRORROGADO <= :POSICAO" Set QMov = NewQuery QMov.Clear QMov.Add(s) End Sub Public Sub REPORT_DestroyData() Set QParcelas = Nothing Set QMov = Nothing End Sub Public Sub REPORT_OnMacroValue(ByVal Name As String, ResultValue As Variant) ' resultvalue = 0 Select Case Name Case "CATEGORIA" t = "" t = t + " SELECT NOME FROM GN_CATEGORIASCLIENTE WHERE HANDLE IN (SELECT CATEGORIACLIENTE FROM GN_PESSOAS WHERE HANDLE IN " t = t + " (SELECT PESSOA FROM FN_DOCUMENTOS WHERE HANDLE=:DOCUMENTO)) " Set r=NewQuery r.Add(t) '' MsgBox(QParcelas.FieldByName("DOCUMENTO").AsString) r.ParamByName("DOCUMENTO").AsInteger = QParcelas.FieldByName("DOCUMENTO").AsInteger r.Active=True If r.FieldByName("NOME").AsString="" Then ResultValue= "Cliente Sem Polo Associado" Else ResultValue= r.FieldByName("NOME").AsString End If r.Active=False Set r = Nothing Case "VENC1A10" dias = DateDiff("d",QParcelas.FieldByName("VCTOPRORROGADO").AsDateTime,Posicao) QMov.ParamByName("PARCELA").Value = QParcelas.FieldByName("HANDLE").Value QMov.ParamByName("POSICAO").Value = Posicao QMov.Active = True If QMov.EOF Then MsgBox "fim" End If If (QMov.EOF Or QMov.FieldByName("BAIXAS").IsNull) Then valor = QParcelas.FieldByName("VALOR").AsFloat Else valor = (QParcelas.FieldByName("VALOR").AsFloat - QMov.FieldByName("BAIXAS").AsFloat) End If QMov.Active = False If (dias >= 1 And dias <= 10) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "VENC11A30" If (dias >= 11 And dias <= 30) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "VENC31A60" If (dias >= 31 And dias <= 60) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "VENC61a90" If (dias >= 61 And dias <= 90) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "VENC91a120" If (dias >= 91 And dias <= 120) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "VENC121a180" If (dias >= 121 And dias <= 180) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "VENC181a360" If (dias >= 181 And dias <= 360) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "VENCAC361" If (dias >= 361) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "VENCTOTAL" If (dias >= 1) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "AVENC1A5" If (dias >= -5 And dias <= 0) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "AVENC6A30" If (dias >= -30 And dias <= -6) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "AVENC31A60" If (dias >= -60 And dias <= -31) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "AVENCAC60" If (dias < -60) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "AVENCTOTAL" If (dias <= 0) Then ResultValue = valor Else ResultValue = 0.0000 End If Case "TOTAL" ResultValue = valor valor = 0.0000 End Select End Sub Public Sub REPORT_SetParams(ByVal aParams As String) Dim i As Long Dim D As String D = ShortHint(aParams) i = StrPos("=",D) Posicao = CDate(Mid(D,i+1,Len(D)-i)) End Sub
×
×
  • Criar Novo...