Vraag : Gegevensbestanden van de Toegang van de Update van de DRUKTE de Veelvoudige/Fout met de Ongeldige Waarde van de Datum

Hallo vormt All

Have een probleem met het bijwerken van een gesynchroniseerde OB van de Toegang, wanneer een Datum van een plukker van de Datum in VB6 Vensters ongecontroleerd is Toepassing. Ook werkt deze boete van de proceswerken met al ander Gebied bij behalve waar de Data Empty.

When zijn een ONGELDIGE die Waarde in (Datum van Één of andere Datum in niets wordt veranderd) rs wordt overgegaan. De update doet niets aan de waarde in tweede DB.

If die ik heb geprobeerd om de waarde op te sluiten en het bij te werken aan een Leeg koord of andere ik volgende error.
ADODB.Field
Description: Huidige Recordset steunt het bijwerken niet. Dit kan een beperking van de leverancier, of van geselecteerde locktype.


And zijn als ik een variabele verklaar om het Type te vangen adoDB.field, krijg ik
Description: Het ongeldige gebruik van Null

This is Oude Code van een vorige ontwikkelaar en eerlijk te zijn worstel ik te begrijpen de beste manier om it.

I te bevestigen de code hieronder en toegevoegde commentaren aan de relevante gebieden heeft vastgemaakt. Het probleem komt specifiek met field.type (7) voor d.w.z. „adDate“.

By de manier de gebiedsDefinitie in de Lijst van de Toegang aan „Vereist = Geen“ wordt geplaatst. voor dit EndDate Field.
My is het intuïtief gevoel/>

I heeft doorgebracht vele uren proberend is om de beste manier op te sporen om dit zodat om het even welke hulp te behandelen zouden appreciated.

Cheers FLOG51

zijn
" 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:
van
Private Functie updateExternalDB (ByVal auditId als Koord, ByVal externalDB als adoUtil, ByVal tablename als Koord, sleutel ByVal als Koord, oldKey ByVal als Koord) als Koord
    Op Fout hervat daarna
    Verduister errorStr als Koord
    Verduister searchKey als Koord

	Verduister parentRS als Voorwerp
	'gDBUtility wordt verklaard als Globaal en routine .getParentRSA terugwint met succes gebiedsGegevens van de Lijst van het Gegevensbestand van de Ouder
	'Dit wordt uitgevoerd nadat de Lijst van de Ouder met succes met Lege Waarden voor relevante data is bijgewerkt.
	Reeks parentRS = gDBUtility.getParentRSA („selecteer“ & gDBUtility.getMyTableExportFields & „van myTable waar cardnumber =“ & sleutel)

	Als niet parentRS dan niets is
	  Als parentRS.EOF = Vals toen
	    Als errorStr = "" toen
	      Schemerige externalparentRS als Voorwerp					
	      Reeks externalparentRS = externalDB.getParentRSA („selecteer * van“ & tablename & „waar cardnumber =“ & Ware sleutel,)
	        Als externalparentRS dan niets is
		      Plaats externalparentRS = externalDB.getParentRSA (tablename, Waar, Waar)
		      externalparentRS.addNew
	        Anders
		      Als externalparentRS.EOF toen
			    externalparentRS.addNew
		      Eind als
	        Eind als
	
	          Schemerig F als adoDB.field
	          Schemerige fieldname als Koord
	          Voor Elk F in parentRS.fields
		        fieldname = f.name				
		        Als niet IsNull (parentRS.fields (fieldname)) Dan
			      Als parentRS.fields (fieldname) <> "" toen
			        'Deze lijn is hieronder waar de ONGELDIGE datumwaarde wordt overgegaan en nooit bij externalparentRS.Update invoert 
				     externalparentRS.fields (fieldname) = parentRS.fields (fieldname)
				    Als me vergis. Aantal <> 0 toen
					  'Debug.Print „ontbrak: “ & err.description
				    Eind als
			      Eind als
		        Eind als
	          Daarna
	          externalparentRS.Update
	          Als me vergis. Aantal <> 0 toen
		        updateExternalDB = err.description
	          Eind als
	    Anders
	      updateExternalDB = errorStr
	    Eind als
	  Eind als
	Eind als
	parentRS.Close
	Reeks parentRS = niets
De Functie van het eind

Antwoord : Gegevensbestanden van de Toegang van de Update van de DRUKTE de Veelvoudige/Fout met de Ongeldige Waarde van de Datum

               Voor Elk F in parentRS.fields 'herhaal door elk gebied in parentRS recordset
                    fieldname = wijzen f.name 'de naam van het huidige gebied aan een koordvariabele toe

'is hier waar ik verward word
            
                    Als niet IsNull (parentRS.fields (fieldname)) Dan 'ga slechts te werk als de waarde van het huidige gebied NIET ONGELDIG is
                        Als parentRS.fields (fieldname) <> "" toen 'slechts te werk gaan als de waarde van het huidige gebied Geen LEEG KOORD is

'hoe zijn wij hier wordend als een Ongeldige waarde??? wordt overgegaan?  Conditionals zouden hierboven dit moeten verhinderen

                          'Deze lijn is hieronder waar de ONGELDIGE datumwaarde wordt overgegaan en nooit bij externalRS.Update invoert
                             externalRS.fields (fieldname) = parentRS.fields (fieldname)           'als wij plaatsen hier dan de waarde van het externalRS recordset gebied aan de zelfde waarde zoals het parentRSgebied krijgen
                            Als me vergis. Nummer <> 0 toen
                                'Debug.Print „ontbrak: “ & err.description
                            Eind als
                        Eind als
                    Eind als
                Daarna
                externalRS.Update 'werk recordset bij
Andere oplossingen  
 
programming4us programming4us