DUVIDA EM VENCIMENTO

GESSINGER 31/03/2011 12:32:10
#369875
Não deu para entender direito, e não gostaria de criar outra tabela

Obs: preciso q todas vez q abrir esse form a rotina [Ô]Verifica status[Ô]......verifique e mostre o resultado
Obs: Ja coloquei [Ô]verifica status no form_load


Obrigado
GESSINGER 31/03/2011 13:31:02
#369883
ajuda ai gente
SACOFRITO 31/03/2011 14:17:26
#369889
faz assim
set dscliente = db.openrecordset([Ô]select * from clientes[Ô], dbopendynaset)
do while not dscliente.eof
set ds = db.openrecordset([Ô]select * from caixa where isnull(pagamento) and codcli = [Ô] & dscliente!codigo, dbopendynaset)
do while not ds.eof
if ds!vencimento < date then
dscliente.edit
dscliente!devedor = [Ô]S[Ô]
dscliente.update

ds.edit
ds!status= [Ô]parcela vencida[Ô]
ds.update
end if
ds.movenext
loop
dscliente.movenext
loop

ou entao se vc nao quiser fazer no load do form pode fazer ao preencher o grid.

tipo assim

set ds = db.openrecorset([Ô]select * from caixa where condicaoqqr[Ô], dbopendynaset)

do while not ds.eof
if ds!vencimento < date then
ds.edit
ds!status = [Ô]parcela vencida[Ô]
ds.update
end if
[ô] aqui voce continua o povoamento do seu grid....
ds.movenext
loop
MSMJUDAS 31/03/2011 14:47:04
#369901
Coloca a função logo após o preenchimento do grid, por ex.:

Private Sub PreencheGrid()

[ô] preenche o grid
For I - 1 To Grid.Rows - 1
...
Next I

[ô] função que verifica o status
VerificaStatus

End Sub
GESSINGER 31/03/2011 18:49:05
#369980

veja q apos carregar o grid eu ja coloquei essa função e o problema continua

Private Sub Form_Load()

sConnString = [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\Administrador\Desktop\Flex_Verifica vencimento\Banco.mdb;Persist Security Info=False[Ô]
conex.Open sConnString
rs.CursorLocation = adUseClient
rs.Open [Ô]Select * from Fiados order by Nome[Ô], conex, adOpenKeyset, adLockOptimistic

Set DataGrid1.DataSource = rs
DataGrid1.Columns.Item(4).NumberFormat = [Ô]##/##/####[Ô] [ô]formata a data

VerificaStatus

End Sub
GESSINGER 01/04/2011 05:27:25
#370012
alguem ai pode alterar pra mim, o mostrar onde ta o problema
MSMJUDAS 01/04/2011 08:28:14
#370017
Anexa esse seu projeto e envia pra gente dar uma olhada.
SACOFRITO 01/04/2011 08:29:47
#370019
Acredito que nao va funcionar...
Enxa o grid com um loop.. eh mais lento mas pro q vc precisa vai funcionar..
ou entao use a funcao de verifica status com a mesma query que vc preencheu, só que antes de preencher o grid.

verificastatus

enxegrid

Assim vai dar certo, pois do seu jeito vc esta alterando depois de preencher, acho que é ai o problema
GESSINGER 01/04/2011 11:32:37
#370055
tai ai o zip, para quel quiser alterar...por favor
SACOFRITO 01/04/2011 11:40:09
#370057
Tenta assim, comentei a linha do verifica status


h
rs.Open [Ô]Select * from Fiados where nome like [ô][Ô] & txtFiltro.Text & [Ô]%[ô][Ô], conex, adOpenKeyset, adLockOptimistic
With GridDados
.Rows = 1
Do While Not rs.EOF
.Rows = .Rows + 1
.TextMatrix(.Rows - 1, 0) = rs!id & [Ô][Ô]
.TextMatrix(.Rows - 1, 1) = rs!Nome & [Ô][Ô]
.TextMatrix(.Rows - 1, 2) = rs!Produto & [Ô][Ô]
.TextMatrix(.Rows - 1, 3) = rs!Preco & [Ô][Ô]
.TextMatrix(.Rows - 1, 4) = Format(rs!Data & [Ô][Ô], [Ô]##/##/####[Ô])
Dias = DateDiff([Ô]d[Ô], CDate(.Columns(4)), Date)
If Dias >= 30 Then
rs.Edit
rs!Status = [Ô]Parcela vencida![Ô]
rs.Update
.TextMatrix(.Rows - 1, 5) = [Ô]Parcela vencida![Ô]
Else
.TextMatrix(.Rows - 1, 5) = rs!Status & [Ô][Ô]
End If
rs.MoveNext
Loop
End With


Se eu n conseguir, desisto hehehehe
Página 3 de 5 [41 registro(s)]
Tópico encerrado , respostas não são mais permitidas