Avatar billede blackie Nybegynder
12. december 2000 - 13:42 Der er 39 kommentarer og
3 løsninger

Builder 5 Kald af funktion, til at oprette i Oracle tabeller

Jeg arbejder i Builder 5.0 og Oracle 8i, Hvordan får jeg sat noget ind i mine tabeller, hvordan kalder
jeg  OpretKunde(), og er det nok i OpretClick, hjælp……

//MODELKOMPONENT.CPP
bool Kunde_::OpretKunde(string NytKundeNr, string NytFirmaNavn, string
                        NyAdresse, int NytPostNr)
{
  DataModule1->Query1->Close();
  DataModule1->Query1->SQL->Clear();
  DataModule1->Query1->SQL->Add(\"Insert into kunde values \");
  DataModule1->Query1->SQL->Add(\"(:KNR,:KNAVN,:KADRESSE,:KPOSTNR, 0,)\");
  DataModule1->Query1->ParamByName(\"KNR\")->AsString=NytKundeNr.c_str();
  DataModule1->Query1->ParamByName(\"KNAVN\")->AsString=NytFirmaNavn.c_str();
  DataModule1->Query1->ParamByName(\"KADRESSE\")->AsString=NyAdresse.c_str();
  DataModule1->Query1->ParamByName(\"KPOSTNR\")->AsInteger=NytPostNr;
  try
  {
  DataModule1->Query1->ExecSQL();
  }
      catch(const EDBEngineError&)
      {
      return false;
      }
return true;
}

//KUNDEFORM.CPP
void __fastcall TKundeFormFrm::GodkendAnnulerClick(TObject *Sender)
{
switch(Application->MessageBox(
      \"Vil du gennemføre dine oprettelser eller vil du annulere dem\",
      \"Gennemfør oprettelser?\",MB_YESNOCANCEL))
      {
        case IDCANCEL: break;
        case IDYES:    DataModule1->boligmappen->Commit();
                        Application->MessageBox(
                          \"Oprettelserne er nu gennemført\",
                            \"Oprettelser gennemført\",MB_OK);
                        Close();
                        break;
        case IDNO:    DataModule1->boligmappen->Rollback();
                        Application->MessageBox(
                          \"Oprettelserne er nu annuleret\",
                            \"Oprettelserne annuleret\",MB_OK);
                            Close();
                            break;
        }

}
//---------------------------------------------------------------------------
void __fastcall TKundeFormFrm::OpretClick(TObject *Sender)
{
//??????????????????????????????????????????
DataModule1->boligmappen->StartTransaction();
}
//-------------------------------------------
Avatar billede stigc Nybegynder
12. december 2000 - 22:13 #1
hvad med noget alla:

void __fastcall TKundeFormFrm::OpretClick(TObject *Sender)
{
Kunde_ K = new Kunde_()
K.OpretKunde(din parameter);


DataModule1->boligmappen->StartTransaction();
}
Avatar billede blackie Nybegynder
12. december 2000 - 23:43 #2
(din parameter), hvad skal jeg skrive der?
Jeg roder rundt i pointernavne, tabelnavne og varialnavne, jeg kan ikke finde rundt i det mere, men programmet kan compiles fejlfrit, men ligemeget hvad jeg gør har programmet ingen funktion.Modelkomponenet.H ser sådan ud.
HJÆÆLPP.

#ifndef ModelkomponentH
#define ModelkomponentH
#include <cstring.h>
#include <list>
#include <string>
using namespace std;
//----------------------------------------------------------------------------
//Klassen Bynavn

class By_Navn
{
public:
  By_Navn();
  int GetPostNr() {return PostNr;}
  string GetByNavn() {return ByNavn;}
  void SaetPostNr(int NytPostNr) {PostNr = NytPostNr;}
  void SaetByNavn(string NytByNavn) {ByNavn = NytByNavn;}
  list<int>GetBynumre();
private:
  int PostNr;
  string ByNavn;
};
//End Klassen Bynavn
//----------------------------------------------------------------------------

//---------------------------------------------------------------------------
//Klassen Kunde

class Kunde_
{
public:
  Kunde_();                        //Constructor
  ~Kunde_();                        //Destructor
  string GetKundeNr() {return KundeNr;}
  string GetFirmaNavn() {return FirmaNavn;}
  string GetAdresse() {return Adresse;}
  int GetPostNr() {return Byerne->GetPostNr();}
  string GetByNavn() {return Byerne->GetByNavn();}
  void SaetKundeNr(string NytKundeNr) {KundeNr= NytKundeNr;}
  void SaetFirmaNavn(string NytFirmaNavn) {FirmaNavn=NytFirmaNavn;}
  void SaetAdresse(string NyAdresse) {Adresse=NyAdresse;}
  void SaetPostNr(int NytPostNr) {Byerne->SaetPostNr(NytPostNr);}
  void SaetByNavn(string NytByNavn) {Byerne->SaetByNavn(NytByNavn);}

  list<string>GetKundenumre();
  bool GetKunde(string FindKundeNr);
  bool OpretKunde(string NytKundeNr, string NytFirmaNavn, string
                  NyAdresse, int NytPostNr);
private:
  string KundeNr;
  string FirmaNavn;
  string Adresse;
  By_Navn* Byerne;  //Pointer til byen, hægtes sammen til kunde
};
//End Klassen Kunde
//------------------------------------------------------------------------------

#endif
Avatar billede stigc Nybegynder
12. december 2000 - 23:50 #3
har du ikke selv lavet kunde_ klassen?
Den skal have parameter som angivet i opretkunde-funktionen:

Kunde_::OpretKunde(string NytKundeNr, string NytFirmaNavn, string NyAdresse, int NytPostNr)
Avatar billede blackie Nybegynder
13. december 2000 - 10:22 #4
Kære Hr. Ekspert:0]
Det har jeg prøvet, men prøver igen, hvorfor virker det så ikke, måske ligger problemmet et andet sted. Kan du se noget andet galt?
Jeg har forbindelse til databasen i Oracle8i, det tog mig ca. en måned at få det til at virke.

Avatar billede blackie Nybegynder
13. december 2000 - 10:57 #5
Fejlmeddelserne:
Cannot convert \"Kunde_\" to \'Kunde_\'
Improper use of typedef \'string\'
Function call missing)
W8004 \'K\' is assigned a value that is never used
Jeg tror snart, jeg skriger, opgiver, finder en anden uddannelse.(øh, det sidste var min egen personlige fejlmeddelse)
Avatar billede soepro Nybegynder
13. december 2000 - 13:47 #6
Er vi ikke enige om at de oplysninger du skal gemme for kunden HAR du indlæst på en eller anden måde, og dermed at du allerede HAR en instans af Kunde ?!?:

Kunde *tmpKunde = new Kunde();
:
tmpKunde->SaetKundenr(StrToInt(KundeForm->Edit1->Text));
tmpKunde->SaetKundeNavn(KundeForm->Edit2->Text);
osv.
:

Når du så rent faktisk skal af med kunden (dvs. oprettet den i din database) laver du:

tmpKunde->OpretKunde(tmpKunde->GetKundeNr(), tmpKunde->GetKundeNavn(); ...);

som du kan se får du en del dobbelt-konfekt med den måde du har lavet OpretKunde på, når den er en memberfunktion til Kunde klassen. Du kan ligeså godt bare anvende Kunde klassens data felter direkte i din Kunde::OpretKunde function:

bool Kunde_::OpretKunde(void)
{
  DataModule1->Query1->Close();
  DataModule1->Query1->SQL->Clear();
  DataModule1->Query1->SQL->Add(\"Insert into kunde values \");
  DataModule1->Query1->SQL->Add(\"(:KNR,:KNAVN,:KADRESSE,:KPOSTNR, 0,)\");
  DataModule1->Query1->ParamByName(\"KNR\")->AsString=KundeNr;
  DataModule1->Query1->ParamByName(\"KNAVN\")->AsString=FirmaNavn;
  DataModule1->Query1->ParamByName(\"KADRESSE\")->AsString=Adresse;
  DataModule1->Query1->ParamByName(\"KPOSTNR\")->AsInteger=PostNr;
  try
  {
    DataModule1->Query1->ExecSQL();
  }
  catch(const EDBEngineError&)
  {
    return false;
  }
  return true;
}

Du kan derudover evt. ændre eller overloade din constructor til Kunde klassen, sådan at du kan angive Navn, Adresse osv. allerede når du initiere din instans af Kundeklassen:

void Kunde::Kunde(string nyNavn, string nyFirma, ...)
{
  Navn =  nyNavn;
  Firma = nyFirma;
  osv.
  :
  // Hvis du evt. vil oprette kunden direkte i databasen med det samme.
  OpretKunde();
}
Avatar billede soepro Nybegynder
13. december 2000 - 13:50 #7
Du kan ikke bruge

Kunde_ K = new Kunde_()

direkte - og i øvrigt er syntaksen ikke korrekt:

Kunde *K = new Kunde();

hvorfra stigc får underscoren ved jeg ikke - men GLEM DEN.
Avatar billede blackie Nybegynder
13. december 2000 - 13:55 #8
Underscoren har jeg i min klasse Kunde_ det andet du skrev skal lige tygges igennem, vender tilbage.
Avatar billede stigc Nybegynder
13. december 2000 - 13:56 #9
det her ud jo nok ret i!

Men har han ikke kaldt klassen:
\"Kunde_\" 

jeg tror nu han har lavet en tom konstruktør, og dermed ikke bruger nogen attributter. Opretkunde er bare en funktion der er indkapslet, og har derfor brug for parameterne!

Men man skulle nok have hele koden for at være sikker!

Avatar billede blackie Nybegynder
13. december 2000 - 14:04 #10
Jeg har da lagt det meste af koden op, desuden er jeg ikke en han, men en hun:0}
Avatar billede stigc Nybegynder
13. december 2000 - 14:05 #11
he, he :)
Avatar billede stigc Nybegynder
13. december 2000 - 14:05 #12
det burde jeg have vist \"blackie\"! Lige lovlig blødt! :)
Avatar billede blackie Nybegynder
13. december 2000 - 14:09 #13
he, he, Meget morsomt hjælp mig nu bare.;=/
Avatar billede stigc Nybegynder
13. december 2000 - 14:11 #14
har du prøvet:


Kunde *K = new Kunde();

K->OpretKunde(\"1234\", \"Firma1\", \"Nnnasgade\", 2200);


Avatar billede blackie Nybegynder
13. december 2000 - 14:39 #15
stigc->( Det kan være jeg skal finde et rengøringsjob istedet.)ØV
Nu har jeg prøvet og får disse fejlmeddelser:
[C++ Error] KundeForm.cpp(96): E2451 Undefined symbol \'Kunde\'
[C++ Error] KundeForm.cpp(96): E2451 Undefined symbol \'K\'
[C++ Error] KundeForm.cpp(96): E2303 Type name expected
[C++ Error] KundeForm.cpp(96): E2379 Statement missing ;

Her er min KundeForm.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include \"Modelkomponent.h\"
#include \"DataModul.h\"
#include \"KundeForm.h\"
#include \"HovedMenuForm.h\"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource \"*.dfm\"
TKundeFormFrm *KundeFormFrm;
//---------------------------------------------------------------------------
__fastcall TKundeFormFrm::TKundeFormFrm(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TKundeFormFrm::AfslutKnapClick(TObject *Sender)
{
switch(Application->MessageBox(
      \"Vil du gennemføre dine oprettelser eller vil du annulere dem\",
      \"Gennemfør oprettelser?\",MB_YESNOCANCEL))
      {
        case IDCANCEL: break;
        case IDYES:    DataModule1->boligmappen->Commit();
                        Application->MessageBox(
                          \"Oprettelserne er nu gennemført\",
                            \"Oprettelser gennemført\",MB_OK);
                        Close();
                        break;
        case IDNO:    DataModule1->boligmappen->Rollback();
                        Application->MessageBox(
                          \"Oprettelserne er nu annuleret\",
                            \"Oprettelserne annuleret\",MB_OK);
                            Close();
                            break;
        }

}
//---------------------------------------------------------------------------

void __fastcall TKundeFormFrm::HovedMenuClick(TObject *Sender)
{
HovedMenuForm->Show();
}
//---------------------------------------------------------------------------


void __fastcall TKundeFormFrm::FormActivate(TObject *Sender)
{
Adres->Text=\" \";
Byen->Text=\" \";
Email->Text=\" \";
FirNavn->Text=\" \";
KontaktPers->Text=\" \";
KuNr->Clear();
LokNr->Clear();
Passiv->Text=\" \";
PoNr->Clear();

KUNDE = new Kunde_;
BYEN = new By_Navn;


}
//---------------------------------------------------------------------------

void __fastcall TKundeFormFrm::GodkendAnnulerClick(TObject *Sender)
{
switch(Application->MessageBox(
      \"Vil du gennemføre dine oprettelser eller vil du annulere dem\",
      \"Gennemfør oprettelser?\",MB_YESNOCANCEL))
      {
        case IDCANCEL: break;
        case IDYES:    DataModule1->boligmappen->Commit();
                        Application->MessageBox(
                          \"Oprettelserne er nu gennemført\",
                            \"Oprettelser gennemført\",MB_OK);
                        Close();
                        break;
        case IDNO:    DataModule1->boligmappen->Rollback();
                        Application->MessageBox(
                          \"Oprettelserne er nu annuleret\",
                            \"Oprettelserne annuleret\",MB_OK);
                            Close();
                            break;
        }

}
//---------------------------------------------------------------------------


void __fastcall TKundeFormFrm::OpretClick(TObject *Sender)
{
Kunde *K = new Kunde();

K->OpretKunde(\"1234\", \"Firma1\", \"Nnnasgade\", 2200);
//Kunde_ KUNDE = new Kunde_;
//K.OpretKunde(string NytKundeNr, string NytFirmaNavn, string
//                NyAdresse, int NytPostNr);
DataModule1->boligmappen->StartTransaction();
}
//---------------------------------------------------------------------------

void __fastcall TKundeFormFrm::FindClick(TObject *Sender)
{
if (KuNr->Text.Length() > 0)
  {
        if (KUNDE->GetKunde(KuNr->Text.c_str()));
        {
          KuNr->Text = (KUNDE->GetKundeNr().c_str());
          FirNavn->Text = (KUNDE->GetFirmaNavn().c_str());
          Adres->Text = (KUNDE->GetAdresse().c_str());
          PoNr->Text = (KUNDE->GetPostNr());
          Byen->Text = (KUNDE->GetByNavn().c_str());
        }
    }
}
//---------------------------------------------------------------------------
Avatar billede blackie Nybegynder
13. december 2000 - 17:48 #16
Soepro-> Jeg forstår ikke helt, det du skriver, men jeg har en tom database, fornær lige det jeg har afprøvet med direkte i oracle.

Gider du at forklare det nærmere.
Har jeg dobbelt konfekt?? Det er fordi jeg har prøvet på flere måder.

Jeg sætter point endnu engang, da det skal være færdigt til fredag morgen og jeg kan ikke finde ud af det sidste, jeg har forsøgt, i en hel måned har jeg arbejdet på det og jeg ved, at i kan lave det på en eftermiddag, det er bare spørgsmål om pointene er høje nok. Så please help me!!!!
Så får i et kys..................................
(Man må jo udnytte, det at være hunkønsvæsen i en mandeverden.) :-))))))))
Avatar billede stigc Nybegynder
13. december 2000 - 21:56 #17
du mamgler:

#include \"kunde.h\"

eller hvad din fil hedder som din kunde klasse ligger i!
Avatar billede blackie Nybegynder
13. december 2000 - 22:02 #18
Der hvor klasserne den fil hedder modelkomponent.h og er includeret.
Avatar billede stigc Nybegynder
13. december 2000 - 22:06 #19
hvorfor skriver du ikke:

Kunde_ *K = new Kunde_();
Avatar billede blackie Nybegynder
13. december 2000 - 22:11 #20
Jubie, jeg fik ingen fejlmeddelser, men virker det nu????
Avatar billede stigc Nybegynder
13. december 2000 - 22:13 #21
kig i din database om du kan oprette en kunde!
Avatar billede blackie Nybegynder
13. december 2000 - 22:22 #22
Jeg skriver i SQL SELECT * FROM kunde;
og den skriver ingen rækker er valgt.
Avatar billede stigc Nybegynder
13. december 2000 - 22:24 #23
hmmmm... det kan være svært at finde sådan en fejl!

Jeg plejer bare at bruge en TQuery alene!

Du må forsøge dig lidt frem!
Avatar billede blackie Nybegynder
13. december 2000 - 22:30 #24
linie 5 er afskåret
1. create user tjaso identified by tjaso
2. default tablespace user_data
3. temporary tablespace temporary_data
4. quota unlimited on user_data quota unlimited on temporary_data;
5. grant connect, resource to tjaso
/
Hvad vil det sige?
Avatar billede stigc Nybegynder
13. december 2000 - 22:31 #25
hvad spytter det ud?
Oracle?
Avatar billede stigc Nybegynder
13. december 2000 - 22:32 #26
og hvornår?
Avatar billede blackie Nybegynder
13. december 2000 - 22:35 #27
Ja, nu da, da gik i editor lå der en fil som hed user, den åbnede jeg,og satte den ind, ved egentlig ikke hvor den kom fra, men det er mit tjaso.Hvad er grant connect i oracle?
Avatar billede stigc Nybegynder
13. december 2000 - 22:38 #28
jeg ved faktisk ikke hvad det er, men det lyder ikke som en fejlmeddelelse!
Avatar billede blackie Nybegynder
13. december 2000 - 23:12 #29
Jeg skriver sådan:
Kunde_ *K = new Kunde_();
K->OpretKunde(string NytKundeNr, string NytFirmaNavn, string NyAdresse,
int NytPostNr);
DataModule1->boligmappen->StartTransaction();

Og får disse fejlmeddelser:

[C++ Error] KundeForm.cpp(99): E2108 Improper use of typedef \'string\'
[C++ Error] KundeForm.cpp(99): E2121 Function call missing )
[C++ Warning] KundeForm.cpp(101): W8004 \'K\' is assigned a value that is never used
Avatar billede stigc Nybegynder
13. december 2000 - 23:34 #30
Hvorfor det?

du skal jo skrive sådan her:

void __fastcall TKundeFormFrm::OpretClick(TObject *Sender)
{
Kunde_ *K = new Kunde_();
K->OpretKunde(\"1234\", \"Firma1\", \"Nnnasgade\", 2200);
DataModule1->boligmappen->StartTransaction();
}
//---------------------------------------------------------------------------

Avatar billede blackie Nybegynder
13. december 2000 - 23:59 #31
Det gjorde jeg også før og der var ingen fejl, men der skal jo andet i min database end lige firma1, ikk\'? .=}
Og firma1 var ikke i min kundedatabase, ØV ØV, jeg føler, jeg er ved at opgive, jeg har brugt så fandens lang tid på dette program og der er intet som virker.
Avatar billede stigc Nybegynder
14. december 2000 - 00:44 #32
ja og det får du nok fra nogen tekstfelter:

K->OpretKunde(tekstfelt1->Tekst,tekstfelt2->Tekst,tekstfelt3->Tekst,tekstfelt4->Tekst);

Avatar billede blackie Nybegynder
14. december 2000 - 01:01 #33
Wanted string got void, skriver den så dem alle
Avatar billede blackie Nybegynder
14. december 2000 - 10:42 #34
Kan jeg bruge alle mine void Saet funktioner i forbindelse med at oprette i tabellerne, de returnere jo ingenting, men det skal de vel heller ikke, de skal sættes og hvis hvordan gør jeg?
Det er vist noget værre rod det program, ikk\'??
Avatar billede soepro Nybegynder
14. december 2000 - 12:20 #35
blackie >> du har dit hyr hva ???

Du skal ikke skrive typen på, når du overfører variabler i parameter listen:

Kunde_ *K = new Kunde_();
K->OpretKunde(NytKundeNr, NytFirmaNavn, NyAdresse, NytPostNr);
DataModule1->boligmappen->StartTransaction();

Mht. dobbelkonfekten hentyder jeg til det faktum at du i din Kunde_ klasse direkte har defineret forskellige felter til at indeholde f.eks. navn og firma. Da disse variabler også er tilgængelige i alle klassens EGNE funktioner, er der jo ingen grund til at overføre dem igen i kaldet til OpretKunde. Det eneste der taler for at gøre dette, er hvis du vil anvende Kunde_ klassen som en slags temporær, global variabel, som du så blot kan ændre indholdet i hele tiden. Så kunne der selvfølgelig være mening i at kunne overføre data fra din form direkte.
Avatar billede soepro Nybegynder
14. december 2000 - 12:39 #36
Mht. til at få de forskellige værdier til kunden (navn, firma osv.) skal du lave nogle TEdit componenter på din kundeform til formålet. Indholdet af dem kan du få fat i ved at skrive KundeForm->Edit1->Text, hvor Edit1 er navnet på din TEdit component. Hvis feltets indhold skal være et tal, kan du i TEdit\'s properties forhindre at andet end tal indtastes, og du skal så blot skrive StrToInt(KundeForm->Edit2->Text) for at få den numeriske værdi ud af feltet.
Avatar billede blackie Nybegynder
14. december 2000 - 12:52 #37
soepro->
1. Det må man sige ja til, det bliver ikke færdigt til imorgen.
2. Dem har jeg lavet se her:
Men jeg kan ikke finde ud af at bruge dem.
KUNDEFORM.H
#ifndef KundeFormH
#define KundeFormH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Buttons.hpp>
#include <ExtCtrls.hpp>
#include <ComCtrls.hpp>
//---------------------------------------------------------------------------
class TKundeFormFrm : public TForm
{
__published:    // IDE-managed Components
        TPanel *TopPanel;
        TPanel *Panel1;
        TPanel *OverskriftsPanel;
        TPanel *KundeFrm;
        TLabel *MenuText;
        TBitBtn *AfslutKnap;
        TRadioButton *Opret;
        TRadioButton *Find;
        TRadioButton *Aendre;
        TRadioButton *Slet;
        TRadioButton *Udskriv;
        TRadioButton *HovedMenu;
        TDateTimePicker *DateTimePicker1;
        TEdit *KontaktPers;
        TEdit *LokNr;
        TEdit *Email;
        TLabel *KundeNr;
        TLabel *FirmaNavn;
        TLabel *Adresse;
        TLabel *PostNr;
        TLabel *KontaktPerson;
        TLabel *EmailAdresse;
        TLabel *By;
        TLabel *LokalNr;
        TLabel *KUndeAktivPassiv;
        TComboBox *Passiv;
        TLabel *DagsDato;
        TEdit *KuNr;
        TEdit *FirNavn;
        TEdit *Adres;
        TEdit *PoNr;
        TEdit *Byen;
        TLabel *Mobil;
        TEdit *mobilnr;
        TRadioButton *GodkendAnnuler;
        void __fastcall AfslutKnapClick(TObject *Sender);
        void __fastcall HovedMenuClick(TObject *Sender);
        void __fastcall FormActivate(TObject *Sender);
        void __fastcall GodkendAnnulerClick(TObject *Sender);
        void __fastcall OpretClick(TObject *Sender);
        void __fastcall FindClick(TObject *Sender);
private:    // User declarations
Kunde_* KUNDE;
By_Navn* BYEN;
public:        // User declarations
        __fastcall TKundeFormFrm(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TKundeFormFrm *KundeFormFrm;
//---------------------------------------------------------------------------
#endif

Avatar billede stigc Nybegynder
15. december 2000 - 00:24 #38
Kunde_ er vel en klasse, der indkapsler en funktion til at oprette kunder i databasen! Eller hvad?
Avatar billede blackie Nybegynder
15. december 2000 - 00:35 #39
Helt ærligt, jeg er snart ligeglad, jeg sidder her helt alene og retter rapport til aflevering imorgen tidlig, ingen program som fungere, en dårlig rapport. Ud af fem personer i en gruppe, er den eneste, der har været aktiv. Det er umuligt at være to steder på engang.
Jeg vender tilbage når jeg er kommet ned på jorden igen, jeg vil jo gerne have programmet til at køre. 
Avatar billede soepro Nybegynder
15. december 2000 - 12:32 #40
Ok, så lad os gribe sagen helt anderledes an:

1) Constructor/Destructor til TKundeFormFrm

void __fastcall TKundeFormFrm::TKundeFormFrm()
{
  Kunde = new Kunde_();
}

void __fastcall TKundeFormFrm::~TKundeFormFrm()
{
  if (Kunde != NULL)
    delete Kunde;
}

2) OpretClick Event-handler

void __fastcall TKundeFormFrm::OpretClick(TObject *Sender)
{

  Kunde->OpretKunde(KuNr->Text,
  Kunde->OpretKunde(KuNr->Text, FirNavn->Text, Adres->Text, StrToInt(PoNr->Text) );
}

Hvis dette ikke duer, så lad os få et nyt spørgsmål med den kode du nu er nået frem til. (Og nogle point for de svar du allerede HAR fået.)
Avatar billede soepro Nybegynder
15. december 2000 - 12:33 #41
Oops - første \'Kunde->OpretKunde(KuNr->Text,\' skulle selvfølgelig have været slettet.
Avatar billede blackie Nybegynder
05. februar 2001 - 12:56 #42
Jeg kom aldrig videre, men I får nogle point for jeres store indsats, jeg er nu igang med Linux.
Her kommer I nok til at høre mere fra mig med henblik på programmering i C.
Tak for hjælpen stigc og soepro.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester