Avatar billede perolsen Novice
05. februar 2000 - 22:28 Der er 8 kommentarer og
1 løsning

Faktura NR

Kære eksperter nu er jeg igen støt ind et problem som er

at jeg har en Table1 hvor der er et Faktura NR: og et Navn. felt
er det så mulig at man kan hente Faktura NR 1 med JØRGEN LARSEN som Navn
Og givet det et nyt Faktura NR uden at slette det gammel  Faktura NR  som er nr 1
Så man har to Faktura Numre med JØRGEN LARSEN
så man ikke behøver at skrive Navn JØRGEN LARSEN igen

eksempel
Faktura Numre 1 JØRGEN LARSEN
Faktura Numre 2 JØRGEN LARSEN
Faktura Numre 3 JØRGEN LARSEN

tussen tak for hjælpen
hvis i har en code må i godt sende den til mig på min e-mail
Avatar billede sjensen Nybegynder
05. februar 2000 - 22:50 #1
Gør sådan her:

Her er en procedure der kopierer en record og giver den et nyt nr.

Procedure make_copy(Gl_Fnr, Ny_Fnr : integer);
var i : integer;
begin
  if fra.findkey([Gl_Fnr]) then
  begin
    til.insert;
    for i := 1 to fra.fieldcount -1 do
    begin
      til.fields[i] := fra.fields[i];
    end;
      til.fields[0].asinteger := Ny_Fnr;
    end;
    til.post;
  end;
end;

Sæt 2 tables på din form. Kald det ene for FRA og det andet TIL. Lad dem begge pege på fakturatablet. Åben begge tables og kald proceduren med det nr du vil kopiere fra (som Gl_Fnr) og det nummer den nye faktura skal have (som Ny_Fnr):

make_copy(glnr, nynr);

så enkelt er det

sjensen
Avatar billede sjensen Nybegynder
05. februar 2000 - 22:53 #2
Ups. en lille syntax fejl i proceduren. Her er den uden fejlen:

Procedure make_copy(Gl_Fnr, Ny_Fnr : integer);
var i : integer;
begin
  if fra.findkey([Gl_Fnr]) then
  begin
    til.insert;
    for i := 1 to fra.fieldcount -1 do
    begin
      til.fields[i] := fra.fields[i];
    end;
    til.fields[0].asinteger := Ny_Fnr;
    til.post;
  end;
end;

sjensen
Avatar billede perolsen Novice
05. februar 2000 - 22:58 #3
hej sjensen jeg prøver det lige ikke
Avatar billede perolsen Novice
06. februar 2000 - 00:29 #4
Hej
jeg kan ikke rigtig få din code til at køre da jeg ikke er sikker på hvor jeg
Skal lægge
Procedure make_copy(Gl_Fnr, Ny_Fnr : integer);
var i : integer;
begin
  if fra.findkey([Gl_Fnr]) then
  begin
    til.insert;
    for i := 1 to fra.fieldcount -1 do
    begin
      til.fields[i] := fra.fields[i];
    end;
    til.fields[0].asinteger := Ny_Fnr;
    til.post;
  end;
end;
Og jeg har da også sat 2 tables på min form men hvor skal Procedure være
Avatar billede sjensen Nybegynder
06. februar 2000 - 09:10 #5
Jeg mailer dig lige et lille eks.

sjensen
Avatar billede sjensen Nybegynder
06. februar 2000 - 10:03 #6
Per,

Check din indbakke. Der ligger et lille program til dig der viser hvordan det virker.

NB! Hvis der evt. er andre der er interesseret sender jeg gerne en kopi til jer også. Bare skriv en mailadresse og der er fluks en kopi på vej !!

sjensen
Avatar billede perolsen Novice
06. februar 2000 - 15:00 #7
Hej sjensen jeg prøver det ligt ikke
har du forresten prøvet ( Extrapak )
på http://www.evgesoft.com/dev/indexreg.html
Avatar billede perolsen Novice
06. februar 2000 - 16:36 #8
hej sjensen der lægger en e-mail til dig
Avatar billede sjensen Nybegynder
06. februar 2000 - 20:08 #9
Hej Per,

Næh.. Jeg har ikke prøvet Extrapack, men jeg var lige inde og se på deres hjemmeside og det ser jo fint ud.

Det kunne være at jeg skulle prøve noget af det de kan levere.

I øvrigt til dig: Kender du Delphi Super Page (DSP). DU har sikkert hørt om det flere gange i dette forum så her giver jeg dig lige Url'en:

http://sunsite.icm.edu.pl

Derfra kan du downloade tons af Delphi komponenter med og uden source o.s.v. og dermed lære mere om tingene.

sjensen
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