Verversen van een Form

Status
Niet open voor verdere reacties.

Dolfke

Gebruiker
Lid geworden
18 apr 2008
Berichten
195
Hoi allemaal,


Ik zit met een probleem en ik begrijp niet waarom het niet lukt.
Ik heb een form met een Subform.

In de AFTERUPDATE van een controle in mijn subform probeer ik de Mainform of bepaalde controls in de mainform te update.

Code:
Forms!FrmPnVerbruik!Controlname
Forms!FrmPnVerbruik.Refresh

Ik heb al echt vanalles geprobeerd.
Het rare is als ik manueel de code doorloopt werkt het verversen wel.
Nu moet ik 2X de waarde ingeven. Update loop 1X achter.

Als ik bv waar 2000 ingeef gebeurd er niks.
Geef ik waarde 2500 in dan spingt alles naar 2000
Geef ik waarde 3000 in dan spirngt het naar 2500
......

alles ijlt na .


Iemand een idee ?

Bedankt
Dolfke
 
Iemand een idee ?

Daarvoor is je informatie te summier. Kun je hier een voorbeeld plaatsen van je db. Zonder gevoelige, maar wel met wat test informatie. Database wel eerst comprimeren en herstellen en daarna zippen of rarren.

of plaats de volledige code.

Je kunt ook nog even proberen om Refresh te vervangen voor Requery.
 
Om te beginnen is het commando niet correct, waardoor de actie uiteraard niet zal werken.
Probeer deze syntax eens:

Code:
Forms!FrmPnVerbruik.Form.Controlname.Setfocus
Ik neem althans aan, dat je een Control wilt selecteren?
Code:
Forms!FrmPnVerbruik.Form.Requery
Forms!FrmPnVerbruik.Form.Refresh
 
Om te beginnen is het commando niet correct, waardoor de actie uiteraard niet zal werken.
Probeer deze syntax eens:

Code:
Forms!FrmPnVerbruik.Form.Controlname.Setfocus
Ik neem althans aan, dat je een Control wilt selecteren?
Code:
Forms!FrmPnVerbruik.Form.Requery
Forms!FrmPnVerbruik.Form.Refresh

Hallo Octafish,

Had inderdaad niet alles gekopieerd
Bedoelde
Code:
Forms!FrmPnVerbruik!Controlname.Requery

Maar hoe komt het als ik in breakmode werk en de code manueel doorloop dat dan alles wel werkt ?


Hieronder heb ik de volledig code van mijn sub bijgevoegd. Database gaat jammer genoeg niet .

Code:
Private Sub Op_De_Price_AfterUpdate()
Dim LngId As Long
Dim StrSaldo As String
Dim rst As DAO.Recordset
Dim StrSQL As String

LngId = Me.OperationCostDetailsID
If Me.DepartmentID = 0 Then
   'Nothing
Else
   Forms!FrmPnVerbruik.Form.TXTTotaalPN.Requery
   Forms!FrmPnVerbruik.Form.Op_PnRestSaldo.Requery

   StrSQL = "SELECT TBLOperationCostDetails.OperationCostID, TBLOperationCost.Op_Budget, Sum(TBLOperationCostDetails.Op_De_Price) AS SumOfOp_De_Price, TBLPnContract.PnContractName "
   StrSQL = StrSQL & "FROM TBLPnContract INNER JOIN (TBLOperationCost INNER JOIN TBLOperationCostDetails ON TBLOperationCost.OperationCostID = TBLOperationCostDetails.OperationCostID) ON TBLPnContract.PnContractID = TBLOperationCost.PnContractID "
   StrSQL = StrSQL & "GROUP BY TBLOperationCostDetails.OperationCostID, TBLOperationCost.Op_Budget, TBLPnContract.PnContractName "
   StrSQL = StrSQL & "HAVING (((TBLOperationCostDetails.OperationCostID)= " & Me.OperationCostID & " ) AND ((TBLPnContract.PnContractName)<>'ADB'));"

   Set rst = CurrentDb.OpenRecordset(StrSQL)
      If rst.RecordCount = 0 Then
          StrSaldo = Forms!FrmPnVerbruik.Form.TXTTotaalPN
      Else
          StrSaldo = rst.Fields(2).Value
      End If
   rst.Close
   Set rst = Nothing
 
   If Left(Forms!FrmPnVerbruik!PnNr, 1) = "0" Then
      Forms!FrmPnVerbruik.Form.Op_PnRestSaldo = StrSaldo
      Forms!FrmPnVerbruik.Form.TXTStartBedrag = StrSaldo
      Forms!FrmPnVerbruik.Form.Op_Budget = StrSaldo
   Else
      Forms!FrmPnVerbruik.Form.Op_PnRestSaldo = Forms!FrmPnVerbruik.Form.TXTStartBedrag - StrSaldo
  End If
  
  Forms!FrmPnVerbruik.Form.Op_PnRestSaldo.Requery
  Forms!FrmPnVerbruik.Form.TXTStartBedrag.Requery
  Forms!FrmPnVerbruik.Form.Op_Budget.Requery
  Forms!FrmPnVerbruik.Requery
  Forms!FrmPnVerbruik!LstSelection.SetFocus
  Forms!FrmPnVerbruik.Form.LstSelection.Requery
 
  
  DoEvents

  Set rst = Me.RecordsetClone
      rst.FindFirst "[OperationCostDetailsID] = " & LngId
    
      If Not rst.NoMatch Then
         Me.Bookmark = rst.Bookmark
      End If
  rst.Close
  Set rst = Nothing
  
  Me.Op_De_Price.SetFocus
 
End If

End Sub

Bedoeling is ik heb een hoofdform met bepaalde data gekoppeld aan een tabel1.
Per record kan ik meerdere uitgaves hebben.Die zien we in het subform.(gekoppeld aan tabel1details.)
Als ik een nieuwe uitgave ingeef moeten de bedragen in het hoofdformulier aangepast en de som opgeslagen worden in tabel1 .


Bedankt.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan