Postada em 04/10/2008 13:17 hs
Pessoal na segunda query onde uso o INNER JOIN nas tabelas (Dados) e (Devoluçao) acontece o seguinte:
Quando existe dados cadastrados nos campos (NumeroNota) e (Data) da tabela (Devolucao) o Grid preenche normalmente, mas quando não tem dados o Grid fica Vazio. Não era pra carregar vazio pois tenho dados cadastrados na Tabela (Dados). Alguem sabe me explicar o porque disso?
Private Sub AtualizaFormulario() Dim Row As Integer Set myRs = New ADODB.Recordset myRs.Open "Select * From Cabecalho Where Codigo = '" & CodigoId & "'", Cnn, adOpenKeyset, adLockOptimistic With myRs LBCodigo.Caption = !Codigo LbNf.Caption = !NumeroNota LBNatureza.Caption = !NaturezaOP LBCfop.Caption = !CFOP LBData1.Caption = !DataEmissao LBData2.Caption = !DataRetorno LBOrigem.Caption = !RazaoSocial LBDestino.Caption = !RazaoSocial2 LBSolicitante.Caption = !Solicitante LBContrato.Caption = !Contrato End With Set rsTemp = New ADODB.Recordset
rsTemp.Open "SELECT Dados.Codigo,Dados.Item,Dados.Descricao,Dados.Um,Dados.Quant,Dados.Unit,Dados.Total,Dados.Obs,Devolucao.NumeroNota,Devolucao.Codigo,Devolucao.Data FROM Dados,Devolucao WHERE Dados.Codigo = Devolucao.Codigo and Dados.Codigo='" & CodigoId & "'", Cnn, adOpenKeyset, adLockOptimistic
With rsTemp If .BOF = True And .EOF = True Then Exit Sub Grid.Rows = .RecordCount + 1 Do Until .EOF = True Row = Row + 1 'Grid.TextMatrix(Row, 0) = !Itens_item Grid.TextMatrix(Row, 1) = !Item Grid.TextMatrix(Row, 2) = !Descricao Grid.TextMatrix(Row, 3) = !Um Grid.TextMatrix(Row, 4) = !Quant Grid.TextMatrix(Row, 5) = !Unit Grid.TextMatrix(Row, 6) = !Total Grid.TextMatrix(Row, 7) = !NumeroNota Grid.TextMatrix(Row, 8) = !Data Grid.TextMatrix(Row, 9) = !Obs .MoveNext Loop End With myRs.Close Set myRs = Nothing
End Sub
Outra, como verefico se o campo é nulo no carregamento do FlexGrid?
|