Vraag : Het bevel of de actie „DeleteRecord“ zijn niet nu beschikbaar.

In Toegang 2007, heb ik een functie in een module die het momenteel geselecteerde verslag schrapt wanneer het het menupunt van het Verslag van de Schrapping wordt geselecteerd.   In vorige versies van Toegang, gebruikten wij SendKeys „{SCHRAPPING}“, Waar - dat doet niets behalve maakt nu het verslag vuil (geef pictogram uit verschijnt).  Zo, schakelde ik op DoCmd.RunCommand over acCmdDeleteRecord.  Dat veroorzaakt de fout het „Bevel of de actie DeleteRecord is niet beschikbaar nu“.

I heeft dat de vorm schrappingen toestaat bevestigd, gedaane maakt als de vorm vuil is, ervoor zorgde ongedaan dat de vorm niet slechts wordt gelezen. Het is geen subform, is het een standalone ononderbroken vorm, en het probleem komt ook met enige geplakte voor forms.

I am - om het even welke ideeën dat gekregen iedereen veel zou gewaardeerd worden.  Thanks.
" codeBody "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
Public Functie DeleteRecord ()
'Deze functie laat verslagschrappingen toe wanneer gebruikersexplicity om a verzoekt
'schrap via het DeleteRecord menupunt.


   Op Fout GoTo ErrorHandler
   Const strProcedureName = „DeleteRecord“
   Schemerige frm als Vorm
   
   'Zorg ervoor er een actieve vorm is.
   Op Fout hervat daarna
   Plaats frm = Screen.ActiveForm
   Als Err.Number <> 0 toen
      GoTo ExitRoutine
   Eind als
   Op Fout GoTo ErrorHandler
   
   'Als de vorm geen RecordSource heeft, geen behoefte verder te gaan.
   Als Format$ (frm.RecordSource) = "" toen
      GoTo ExitRoutine
   Eind als
   
   'Als dit een nieuw verslag is, geen behoefte verder te gaan.
   Als frm.NewRecord toen
      GoTo ExitRoutine
   Eind als
   
   'Allen als goed, dat doe wat wij hier kwamen doen.
   gstrActiveFormForDeleteRecord = frm. Naam
   
   'Verzend F2 om ervoor te zorgen dat de gebruiker alle verslagen niet heeft geselecteerd.
   SendKeys „{F2}“, Waar
   
   'Selecteer het dynamische archief (en verzeker slechts! wordt geselecteerd)
   Op Fout hervat daarna
   RunCommand acCmdSelectRecord
   Als Err.Number <> 0 toen
      GoTo ExitRoutine
   Eind als
   Op Fout GoTo ErrorHandler
   
   'Doe de regelmatige het menuoptie van de Schrapping „van het Verslag“.
   'Op Fout hervat daarna
   
   Als frm. Vuil = Waar toen
    frm. Maak ongedaan
   Beëindig als
   
 
   DoCmd.RunCommand acCmdDeleteRecord
   'SendKeys „{SCHRAPPING}“, Waar

   gobjLastError.Save vergis me, strProcedureName
   Op Fout GoTo ErrorHandler
   Selecteer Geval gobjLastError.Number
      Geval 0 'Geen fout
         'Doe niets
      Geval anders
         'Geef een systeemfout voor iets anders.
         gobjLastError.Raise gobjLastError.Number & „: “ & gobjLastError.Description
   Uitgezocht eind
   
ExitRoutine:
   Op Fout hervat daarna
   gstrActiveFormForDeleteRecord = ""
   De Functie van de uitgang
ErrorHandler:
   gobjLastError.Save vergis me, strProcedureName
   Selecteer Geval gobjLastError.Number
      Geval anders
         gobjLastError.Show
         Hervat ExitRoutine
   Beëindig Uitgezocht
Beëindig Functie

Antwoord : Het bevel of de actie „DeleteRecord“ zijn niet nu beschikbaar.

Gebruik in plaats daarvan dit
1:
2:
3:
4:
   Schemerige rs als Recordset
   Reeks rs = frm. Recordset
   rs. Schrap
   rs. Requery
Andere oplossingen  
 
programming4us programming4us