Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [delphi]: problema con la rete

    ciao a tutti,

    ho realizzato un semplice gestionale adoperando delphi 6 e access mediante
    ADO.

    il programma mi da problemi se funziona con due pc in rete. Soprattutto
    quando entrambi gli utenti utilizzano la stessa tabella del database (mi da
    un problema di aggiornamento della tabella) . Come posso risolvere
    l'inconveniente? Su ogni pc viene utilizzato un eseguibile diverso che
    condividono lo stesso database.

    ciao

    --
    "Ogni artista è un cannibale, ogni poeta è un ladro
    tutti uccidono la loro ispirazione poi cantano del loro dolore "

  2. #2
    Utilizzano la stessa tabella o lo stesso record?

    e poi qual'è l'errore che ti ritorna?
    Il dubbio non è piacevole, ma la certezza è ridicola. Solo gli imbecilli son sicuri di ciò che dicono.

  3. #3
    'impossibile individuare la riga specificata per l'aggiornamento...'

    L'errore viene generato sia quando inseriscono un nuovo record sia in modifica

    ciao
    "Ogni artista è un cannibale, ogni poeta è un ladro
    tutti uccidono la loro ispirazione poi cantano del loro dolore "

  4. #4
    quale versione delle librerie di ado utilizzi se sono precedenti alla 2.6 sta li il problema
    Il dubbio non è piacevole, ma la certezza è ridicola. Solo gli imbecilli son sicuri di ciò che dicono.

  5. #5
    win xp delphi 6 office xp

    in alcuni form non si verifica l'errore anche se etrambi gli utenti utilizzano la stessa tabella.
    "Ogni artista è un cannibale, ogni poeta è un ladro
    tutti uccidono la loro ispirazione poi cantano del loro dolore "

  6. #6
    ecco il codice:

    procedure TForm10.FormActivate(Sender: TObject);
    begin
    edit3.setfocus;
    (*edit3.Text:=''; *)
    edit1.Text:='1,00';
    edit2.Text:='';
    edit4.Text:='';

    CHECKBOX1.checked:=true;
    checkbox2.checked:=false;
    checkbox3.Checked:=false;
    checkbox4.Checked:=false;
    form1.ADOTable2.Active:=false;

    form1.adotable1.active:=false;
    form1.adotable5.active:=false;
    (*datasource1.Enabled:=false; *)
    form1.adotable2.active:=true;
    form1.adotable1.active:=true;
    form1.adotable5.active:=true;


    button1.enabled:=false;
    button3.Enabled:=false;
    form1.adotable5.First;
    while not form1.adotable5.Eof do
    form1.adotable5.Delete;


    end;


    procedure TForm10.Button1Click(Sender: TObject);
    var sottrazione:real;

    begin
    form1.edit6.Text:='';

    form1.adotable5.First;
    if checkbox3.Checked then begin
    form25.adotable1.Append;
    form25.ADOTable1.FieldByName('numerofattura').asin teger:=form25.ADOTable3.FieldByName('numerofattura ').asinteger;
    form25.ADOTable3.Edit;
    form25.ADOTable3.FieldByName('numerofattura').AsIn teger:=form25.ADOTable3.FieldByName('numerofattura ').AsInteger+1;
    form25.ADOTable3.Post;
    form25.ADOTable1.FieldByName('datafattura').asdate time:=date;
    form25.adotable1.Post;
    end;
    if checkbox4.Checked then begin
    form1.adotable11.active:=true;
    form1.ADOTable11.append;
    form1.ADOTable11numero.Value:=form1.adotable13nume ropreventivo.Value;
    form1.ADOTable11.FieldByName('datapreventivo').asd atetime:=date;

    form1.ADOTable11.post;
    form1.adotable13.Edit;
    form1.adotable13numeropreventivo.Value:=form1.adot able13numeropreventivo.Value+1;
    form1.ADOTable13.Post;
    end;
    while not form1.adotable5.eof do
    begin
    if form1.ADOTable2.Locate('barcode',form1.ADOTable5.F ieldByName('codicearticolo').Asstring,[]) then
    begin
    form1.ADOTable2.edit;
    sottrazione:=(form1.adotable2.fieldbyname('qntprod otto').asfloat)-(form1.adotable5.fieldbyname('qnt').asfloat);
    form1.ADOTable2.fieldbyname('qntvendute').Asfloat: =(form1.ADOTable2.fieldbyname('qntvendute').Asfloa t)+(form1.adotable5.fieldbyname('qnt').asfloat);
    form1.adotable2.fieldbyname('qntprodotto').asstrin g:=floattostr(sottrazione);
    form1.adotable2.post;
    end;
    if checkbox2.Checked then begin
    form1.ADOTable1.Append;
    form1.ADOTable1.FieldByName('data').AsDateTime:=da te;
    form1.ADOTable1.FieldByName('descriz').Asstring:=' Vendita '+ form1.ADOTable5.FieldByName('descrizione').Asstrin g+' - [Qnt.]:'+form1.adotable5.FieldByName('qnt').asstring+' - [Prezzo iva comp.]:'+form1.adotable5.FieldByName('prezzounitario').a sstring+' €';
    form1.ADOTable1.FieldByName('entrata').Asstring:=f orm1.adotable5.FieldByName('totale').asstring;
    form1.adotable1.post;

    end;


    if checkbox3.checked then begin

    form25.adotable2.append;
    form25.adotable2.FieldByName('id_articolo').AsStri ng:=form25.adotable1.fieldbyname('id').asstring;
    form25.adotable2.fieldbyname('codicearticolo').ass tring:=form1.adotable5.fieldbyname('codicearticolo ').asstring;
    form25.adotable2.fieldbyname('descrizione').asstri ng:=form1.adotable5.fieldbyname('descrizione').ass tring;
    form25.adotable2.fieldbyname('qnt').asfloat:=form1 .adotable5.fieldbyname('qnt').asfloat;
    form25.adotable2.fieldbyname('prezzounitario').ass tring:=form1.adotable5.fieldbyname('prezzoalpubbli co').asstring;
    form25.adotable2.fieldbyname('importototale').asfl oat:=(form25.adotable2.fieldbyname('prezzounitario ').asfloat)*(form25.adotable2.fieldbyname('qnt').a sfloat);
    form25.ADOTable2.FieldByName('iva').asinteger:=for m1.adotable5.fieldbyname('iva').AsInteger;
    form25.ADOTable2.FieldByName('um').asstring:=form1 .adotable5.fieldbyname('um').Asstring;
    form25.ADOTable2.post;

    end;
    if checkbox4.checked then begin
    form1.ADOTable12.Active:=true;
    form1.adotable12.append;
    form1.adotable12.FieldByName('id_articolo').AsStri ng:=form1.adotable11.fieldbyname('id').asstring;
    form1.adotable12.fieldbyname('codicearticolo').ass tring:=form1.adotable5.fieldbyname('codicearticolo ').asstring;
    form1.adotable12.fieldbyname('descrizione').asstri ng:=form1.adotable5.fieldbyname('descrizione').ass tring;
    form1.adotable12.fieldbyname('qnt').asfloat:=form1 .adotable5.fieldbyname('qnt').asfloat;
    form1.adotable12.fieldbyname('prezzounitario').ass tring:=form1.adotable5.fieldbyname('prezzoalpubbli co').asstring;
    form1.adotable12.fieldbyname('importototale').asfl oat:=(form1.adotable12.fieldbyname('prezzounitario ').asfloat)*(form1.adotable12.fieldbyname('qnt').a sfloat);
    form1.ADOTable12.FieldByName('um').asstring:=form1 .adotable5.fieldbyname('um').Asstring;
    form1.ADOTable12.post;
    end;

    form1.adotable5.next;



    end;
    close;
    form1.adotable1.Refresh;
    if checkbox3.checked then begin
    form25.ADOTable1.Refresh;
    form25.ADOTable2.Refresh;
    form25.ShowModal;
    end;
    if checkbox4.checked then begin
    form1.ADOTable11.Refresh;
    form1.ADOTable12.Refresh;
    form40.ShowModal;
    end;
    end;
    "Ogni artista è un cannibale, ogni poeta è un ladro
    tutti uccidono la loro ispirazione poi cantano del loro dolore "

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.