Probleme mit SQL_Datenbankanbindung



  • 2.) Je nach DBMS kannst du gar nicht "nur ein Datum" speichern. 😉
    3.) Kommt drauf an, wann das ist - ich idle rum, einfach wecken. 😃



  • 2.) Das ja irgendwie ziemlich scheisse 😡 Hoffe bei Sql geht das einfach so
    3.) So gegen 12:30 denke ich 🤡



  • 2.) Das verträgt sich ziemlich gut, keine Sorge. 🙂
    Ich habs schon mit MySQL, Pervasive und MS-SQL durch. Das schlimmste ist, wenn du dsa DBMS änderst.
    3.) Okay, bis 13:00 hab ich Pause, danach wirds erst nach 15:00 was.



    1. Denn bin ich ja beruhigt
    2. Bin nun erst zuhause 😞 muss mich auch erstmal wieder aufwärmen :p


  • *lol* bis 13 Uhr da, dein Post kommt 13:01 Uhr 🤡



  • 😃 Gut, dass es manchmal anders kommt als geplant. 😉



  • Tach auch 🙂

    zu 1.) das neu laden funzt ja soweit so gut. Bloss ich will denn ja im Grunde dem Feld fürs Speichern der KundenNr in der 2. Tabelle sagen das er die grade eingetragene nehmen soll. So nachm Motto m_pSet->m_KundenNr=m_pSet2->m_KundenNr, also das er sich die KundenNr aus den Kundendaten holt und denn auch gleich in die andere Tabelle als KundenNr gespeichert wird. Aber irgendwie übergibt er so nicht die KundenNr ins andere Feld 😕



  • Rufst du es vielleicht falschherum auf? 😕

    m_pSet->m_KundenNr=m_pSet2->m_KundenNr;
    // oder?
    m_pSet2->m_KundenNr=m_pSet->m_KundenNr;
    

    Bei so gleichen Namen kommt man so schnell durcheinander.

    Sonst zeig mal den ganzen Block. 🙂
    Was sagt der Debugger?



  • Also Debugger sagt nix. Er speichert halt bloss die KundenNr nicht in der 2. Tabelle und im Editfeld wird auch nix angezeigt.
    Hmm eben hat es gefunzt, er hat zwar die Nummer gespeichert in der 2. Tabelle aber ned im Feld angezeigt, was aber auch ned so wichitg ist :>



  • NUn geht es wieder ned ich dreh durch Oo
    Edit: Also wenn ich pset2 = pset mach trägt er null ein, anders rum auch aber dazu macht er noch im edit feld der 1. kundennr ne 123456789 😕

    void CTest3View::OnSave() 
    {
    	UpdateData(true);
    	m_pSet->Update();
    	m_TerminNachname=m_pSet->m_Nachname;
    	if (m_pSet->CanRestart() && m_pSet->IsOpen())
    	{
    		m_pSet->Requery();
    		m_pSet->MoveLast();
    	}
    	UpdateData(false);
    	GetDlgItem(IDC_EDIT1)->EnableWindow(FALSE);
    	GetDlgItem(IDC_EDIT2)->EnableWindow(FALSE);
    	GetDlgItem(IDC_EDIT3)->EnableWindow(FALSE);
    	GetDlgItem(IDC_EDIT4)->EnableWindow(FALSE);
    
    }
    

    Das mach ich ja wenn ich die Kundendaten speicher.
    Denn hab ich erstmal nen Zwischen button eingebaut um das zu testen:

    void CTest3View::OnKundenKind() 
    {
    	UpdateData(true);
    	m_pSet2->m_KundenNr2=m_pSet->m_KundenNr;
    	UpdateData(false);
    }
    

    Ich hatte extra noch mal die KundenNr in der 2. Tabelle in m_KundenNr2 überall umgeändert, dachte daran liegts vllt
    Edit: Ich glaub als es ging hatte ich die variablen ned geändert Oo vllt leigts daran 😕



  • Also, ohne Code kann ich nur raten. 🙄



  • Ist ja nun rein editiert :>



  • In dem Code fehlt mir ein Block, den ich nicht erkennen kann.
    Da muss irgendwo sowas in der Art stehen:

    Set->Edit(); // Oder AddNew(); -- Das schaltet zum "Eingeben" frei. Erst danach ist Füllen sinnvoll.
    Set->m_Nachname = "Bla"; // Füllen
    Set->Update(); // In DB schreiben
    // Optinal
    Set->Requery(); // Neu laden
    

    Ich finde nichtmal Edit oder AddNew.

    Und das Update ist VOR dem Füllen der Variablen. 😕



  • ich denke mal, mit dem updatedata werden nur werte aus formularen übernommen.



  • Das AddNew hab ich in ner anderen Funktion estartu :>
    Und das was nach dem Update kommt ist nur das ich das eingetragen in nem anderen Feld auch angezeigt haben will.



  • reda schrieb:

    Das AddNew hab ich in ner anderen Funktion estartu :>

    Werden die denn in der richtigen Reihenfolge aufgerufen? 😕
    Soviel Verteilung ist auch ne Fehlerquelle. 🙄



  • Hab das nur so verteilt weil ich erst die Datenfelder mit dem Button Neu freigebe.



  • void CTest3View::OnNew() 
    {
    
    	GetDlgItem(IDC_EDIT1)->EnableWindow(TRUE);
    	GetDlgItem(IDC_EDIT2)->EnableWindow(TRUE);
    	GetDlgItem(IDC_EDIT3)->EnableWindow(TRUE);
    	GetDlgItem(IDC_EDIT4)->EnableWindow(TRUE);
    	UpdateData(true);
    	m_pSet->AddNew();
    	m_pSet2->AddNew();
    	UpdateData(false);
    }
    void CTest3View::OnSave() 
    {
    	UpdateData(true);
    	m_pSet->Update();
    	m_TerminNachname=m_pSet->m_Nachname;
    	if (m_pSet->CanRestart() && m_pSet->IsOpen())
    	{
    		m_pSet->Requery();
    		m_pSet->MoveLast();
    	}
    	UpdateData(false);
    	GetDlgItem(IDC_EDIT1)->EnableWindow(FALSE);
    	GetDlgItem(IDC_EDIT2)->EnableWindow(FALSE);
    	GetDlgItem(IDC_EDIT3)->EnableWindow(FALSE);
    	GetDlgItem(IDC_EDIT4)->EnableWindow(FALSE);
    
    }
    
    void CTest3View::OnKundenKind() 
    {
    
    	GetDlgItem(IDC_EDIT5)->EnableWindow(TRUE);
    	GetDlgItem(IDC_EDIT12)->EnableWindow(TRUE);
    	UpdateData(true);
    	m_pSet2->m_KundenNr2=m_pSet->m_KundenNr;
    	UpdateData(false);
    }
    
    void CTest3View::OnAddkind() 
    {
    	UpdateData(true);
    	m_pSet2->Update();
    	m_TermineKinderName=m_pSet2->m_NamedesKindes;
    	if (m_pSet2->CanRestart() && m_pSet2->IsOpen())
    	{
    		m_pSet2->Requery();
    		m_pSet2->MoveLast();
    	}
    	UpdateData(false);
    
    }
    

    So ist der Ablauf der Funktionen, kp was daran falsch sein sollte :> Ausser das ich das OnKundenKind irgendwie noch in ONSave einbauen wollte.



  • Vorausgesetzt, dass du die Buttons in der richtigen Reihenfolge drückst und UpdateData(TRUE) auch die Daten richtig ins Recordset überträgt, sieht das soch gut aus.
    Beim UpdateData habe ich noch so meine Zweifel... 🙄 Aber wenn du sagt, im Debugger sieht es gut aus, dann glaub ich das mal. 😕

    Sorry, bin ratlos. 😞



  • Mich regt das so auf das es einmal finktioniert hat und ich denn was umgebastelt habe und es nun nicht mehr geht 😕


Anmelden zum Antworten