Bom dia
Em meu formulário (em anexo a este) tenho os subformulários para inclusão de itens....., quando possível, preciso tentar usar meio papel A4 para impressão...., uso no botão "Visualizar" o código:
Para contar os itens lançados uso (nó código):
Ocorre que, quando houver mais de 4 itens lançados, uso o código:
e quando for menos de 4 itens, entro no else...., porém, quando tenho 3 lançamentos por exemplo, são apresentados apenas 2 itens na visualização.
Alguém tem alguma dica de onde possa estar errando ou alguma dica de como posso corrigir isto?
em anexo disponibilizo modelo em access 2007
Att.
Vinicius
Em meu formulário (em anexo a este) tenho os subformulários para inclusão de itens....., quando possível, preciso tentar usar meio papel A4 para impressão...., uso no botão "Visualizar" o código:
- Código:
Private Sub btVisualizar_Click()
On Error GoTo trataerro
Dim strLogoUsa As Variant
Dim strSeparaPecaServico As Variant
Dim xTotal As Currency
Dim filtroItem As Variant
Dim regItem As Variant
strLogoUsa = DLookup("empLogoUsa", "tbEmpresa")
strSeparaPecaServico = DLookup("empSepServPec", "tbEmpresa")
If IsNull(Forms!frmOrdem!idOrdem) Then Exit Sub
xTotal = Nz(DSum("[valUnit]", "tbApontamentos", "[idOrcamento] =" & Me.idOrdem))
Me!ordValFinal.Value = xTotal
If IsNull(Me.idCliOrdem) = True Then
MsgBox "Selecione o Cliente!! " & vbCrLf & vbCrLf & "Preenchimento Obrigat?rio.", vbCritical, "Erro..."
Me.idCliOrdem.SetFocus
Exit Sub
End If
DoCmd.RunCommand acCmdSaveRecord
filtroItem = "[idOrcamento]=" & Forms![frmOrdem]![idOrdem]
regItem = DCount("idOrcamento", "tbApontamentos", filtroItem)
If strSeparaPecaServico = "0" Then
If (regItem) >= "4" Then
If strLogoUsa = "-1" Then
DoCmd.OpenReport "relOrdemServi?oNovo", acViewPreview, , "[Contador]=" & [Forms]![frmOrdem].[Contador]
End If
If strLogoUsa = "0" Then
DoCmd.OpenReport "relOrdemServi?oNovoSL", acViewPreview, , "[Contador]=" & [Forms]![frmOrdem].[Contador]
End If
Else
If strLogoUsa = "-1" Then
DoCmd.OpenReport "relOrdemServi?oNovo_MA4", acViewPreview, , "[Contador]=" & [Forms]![frmOrdem].[Contador]
End If
If strLogoUsa = "0" Then
DoCmd.OpenReport "relOrdemServi?oNovo_MA4SL", acViewPreview, , "[Contador]=" & [Forms]![frmOrdem].[Contador]
End If
End If
End If
If strSeparaPecaServico = "-1" Then
If strLogoUsa = "-1" Then
DoCmd.OpenReport "relOrdemServi?oNovoPS", acViewPreview, , "[Contador]=" & [Forms]![frmOrdem].[Contador]
End If
If strLogoUsa = "0" Then
DoCmd.OpenReport "relOrdemServi?oNovoSLPS", acViewPreview, , "[Contador]=" & [Forms]![frmOrdem].[Contador]
End If
End If
Exit_TrataErro:
Exit Sub
trataerro:
Select Case err.Number
Case 2110
MsgBox "Corrija os Dados da Ordem de Servi?os.", vbOKOnly + vbCritical, "Erro"
[Forms]![frmOrdem]![dtEntOrdem].enabled = True
[Forms]![frmOrdem]![idCliOrdem].enabled = True
[Forms]![frmOrdem]![idEqOrdem].enabled = True
[Forms]![frmOrdem]![vePlaca].enabled = True
[Forms]![frmOrdem]![Modelo].enabled = True
[Forms]![frmOrdem]![ordCord].enabled = True
[Forms]![frmOrdem]![idMec].enabled = True
[Forms]![frmOrdem]![AcessorioOrdem].enabled = True
[Forms]![frmOrdem]![DefeitoOrdem].enabled = True
[Forms]![frmOrdem]![vePlaca].enabled = True
[Forms]![frmOrdem]![sfrmItensApontamentoNovo].enabled = True
[Forms]![frmOrdem]![idCliOrdem].SetFocus
Case Else
MsgBox "Erro: " & err.Number & vbCrLf & err.Description, vbCritical, "Aviso - Visualizar O. S.", _
err.HelpFile, err.HelpContext
End Select
Resume Exit_TrataErro:
End Sub
Para contar os itens lançados uso (nó código):
- Código:
filtroItem = "[idOrcamento]=" & Forms![frmOrdem]![idOrdem]
regItem = DCount("idOrcamento", "tbApontamentos", filtroItem)
Ocorre que, quando houver mais de 4 itens lançados, uso o código:
- Código:
If (regItem) >= "4" Then
If strLogoUsa = "-1" Then
DoCmd.OpenReport "relOrdemServi?oNovo", acViewPreview, , "[Contador]=" & [Forms]![frmOrdem].[Contador]
End If
If strLogoUsa = "0" Then
DoCmd.OpenReport "relOrdemServi?oNovoSL", acViewPreview, , "[Contador]=" & [Forms]![frmOrdem].[Contador]
End If
e quando for menos de 4 itens, entro no else...., porém, quando tenho 3 lançamentos por exemplo, são apresentados apenas 2 itens na visualização.
Alguém tem alguma dica de onde possa estar errando ou alguma dica de como posso corrigir isto?
em anexo disponibilizo modelo em access 2007
Att.
Vinicius
- Anexos
- teste.zip
- Você não tem permissão para fazer download dos arquivos anexados.
- (243 Kb) Baixado 14 vez(es)
Última edição por vinicius.anna em 15/6/2019, 14:18, editado 1 vez(es) (Motivo da edição : Complemento de informação)