title: campi vuoti

author: subwoofer

text:
salute a tutti,
Ho una tabella con dei campi, alcuni dei quali devono essere inseriti
obbligatoriamente, altri no.
Vorrei attivare dei messaggi di errore nel caso in cui uno dei campi
obbligatori non venisse riempito.
La cosa mi riesce se il campo è numerico, mentre se è di tipo data,
nonostante specifichi nella proprietà della tabella coinvolta "valore
richiesto=Si" il messaggio di errore non viene visualizzato.
In compenso il record non viene salvato, ma vorrei cmq il messaggio
Un saluto a tutto il NG


title: campi vuoti

author: Sergio MAZZA

text:
"subwoofer" <
frd...@supereva.it
> ha scritto nel messaggio
news:9ej4lk$cm8$1...@pegasus.tiscalinet.it...

Forse hai impostato un valore (una data) predefinita...
Ciao.


title: campi vuoti

text:
Ho ricontrollato ma non risulta alcun valore predefinito
ciao.
Sergio MAZZA <
sergi...@tiscalinet.it
> wrote in message
9ej89u$khq$1...@canarie.caspur.it...



title: Access MSDE

author: ultrareflex

text:
Salve a tutto il NG.
Avrei bisogno di sapere come cambia questa espressione che in access va bene
invece in MSDE non va.
E' un'espressione di una query:
PrezzoTotale: IIf([PrezzoVendita] Is Null Or [Quantità] Is
Null;0;CCur([PrezzoVendita]-([PrezzoVendita]*[Sconto]/100))*([Quantità])+([I
mporto]))
Se lo scrivo sul MSDE mi dà prima errore dicendomi che il CCur non lo
riconosce, poi non gli piace nemmeno il IIf......allora ho controllato i
riferimenti e mancavano quelli del DAO e li ho inseriti...ma nulla non gli
piace lostesso.....come ne potrei uscire?
Grazie a tutti!
Ultra


title: Access MSDE

author: OneEDP

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:iTfPa.19294$qa5.4...@news2.tin.it...

MSDE non supporta le funzioni di Access nè tantomeno quelle definite nelle
maschere. Potresti crearti delle UDF ma solo con Access 2002.
In alternativa devi studiarti le T-SQL. In particolare lo statement CASE e
crearti un sp dal progetto adp.
Per quanto riguarda la funzione Is Null la corrispondente e IFNULL o
COALESCE.
Se vuoi posso darti il link per scaricarti la documentazione in linea di SQL
(sono 39 Mb)
Ciao
Ciao


title: Access MSDE

author: Giorgio Prx

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:iTfPa.19294$qa5.4...@news2.tin.it...

Prova così
CASE WHEN ([PrezzoVendita] Is Null Or [Quantità] Is Null)
     THEN 0
     ELSE
CONVERT(MONEY,([PrezzoVendita]-([PrezzoVendita]*[Sconto]/100))*([Quantità])+
([Importo]))
     END AS PrezzoTotale
Fai attenzione alle parentesi non l'ho provata e soprattutto agli
arrotondamenti Money come Currency ha 4 decimali, in SqlServer la funzione
ROUND funzione bene (sempre che tu non abbia utilizzato il tipo di dato
float).
Ciao Giorgio


title: Access MSDE

author: yQy

text:
On Thu, 10 Jul 2003 16:13:17 GMT, "OneEDP" <
one.emme...@tin.it
>
wrote:
>
>Se vuoi posso darti il link per scaricarti la documentazione in linea di SQL
>(sono 39 Mb)
Posso chiederti io il link?
Thanx


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bek4c8$o0p$1...@lacerta.tiscalinet.it...

Ciao Giorgio, ho provato quello che tu mi hai mandato ma stranamente non
riconosce CASE. Poi il mio PrezzoVendita non è Money visto che potrebbe
essere indifferentemente dollari/euro ho preferito lasciarlo numerico
precisione doppia con 2 decimali.
Hai un'altra idea??


title: Access MSDE

author: George

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:2htPa.22716$qa5.5...@news2.tin.it...

Il case lo usi in una vista o in una stored procedure?
Usalo in una stored procedure...


title: Access MSDE

text:
"yQy" <
fabrizi...@tin.it
> ha scritto nel messaggio
news:u5ergv4rc8mnunupc...@4ax.com...

http://www.microsoft.com/italy/sql/techinfo/productdoc/2000/books.asp
Prima di installare tutto leggi attentamente le note per non avere sorprese
in Access.
Ciao


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:2htPa.22716$qa5.5...@news2.tin.it...

Ciao ultrareflex
1) Togli i riferimenti a DAO non servono a nulla la query viene valutata dal
server e non da Access.
2) L'istruzione CASE è un'istruzione di SqlServer e viene riconosciuta, se
utilizzi una Vista devi inserire l'istruzione in basso dove c'è il codice
SQL e quando confermi riceverail l'avviso "La finestra di progettazione non
supporta il costrutto SQL CASE." e in ogni caso ti permette di salvare ed
eseguire la vista.
3) L'equivalente di Ccur (usato nel tuo post) è Money che è un tipo di dato
preciso con quattro decimali, Access lo visualizza con il simbolo dell'euro.
Se devi usare un campo con due decimali utilizza Decimal dove puoi indicare
il numero delle cifre totali e il numero dei decimali.
4) Il tipo di dato Doppia precisione (che in Sql è float) è a virgola mobile
(anche se mettendo 2 decimali nell'apposita casella viene visualizzato come
voluto al suo interno il numero mantiene tutti i decimali del caso)  e
utilizzarlo in Sqlservedr per i calcoli monetari vuoi dire andare incontro a
guai sicuri.
Quindi...
-------------------
CASE WHEN ([PrezzoVendita] Is Null Or [Quantità] Is Null)
           THEN 0
           ELSE
ROUND([PrezzoVendita]-([PrezzoVendita]*[Sconto]/100))*([Quantità])+([Importo
]),2)
          END AS PrezzoTotale
----------------------
Ripeto l'arrotondamento funziona bene per campo con tipo di dato preciso e
non a virgola mobile.
Ciao Giorgio.


title: Access MSDE

text:
> Ciao ultrareflex
> 1) Togli i riferimenti a DAO non servono a nulla la query viene valutata
dal
> server e non da Access.
Ok l'ho fatto.
> 2) L'istruzione CASE è un'istruzione di SqlServer e viene riconosciuta, se
> utilizzi una Vista devi inserire l'istruzione in basso dove c'è il codice
> SQL e quando confermi riceverail l'avviso "La finestra di progettazione
non
> supporta il costrutto SQL CASE." e in ogni caso ti permette di salvare ed
> eseguire la vista.
Ok funziona su una vista.
> 3) L'equivalente di Ccur (usato nel tuo post) è Money che è un tipo di
dato
> preciso con quattro decimali, Access lo visualizza con il simbolo
dell'euro.
> Se devi usare un campo con due decimali utilizza Decimal dove puoi
indicare
> il numero delle cifre totali e il numero dei decimali.
Non posso usare money perchè l'ordine o l'offerta potrebbe cambiarmi valuta.
> 4) Il tipo di dato Doppia precisione (che in Sql è float) è a virgola
mobile
> (anche se mettendo 2 decimali nell'apposita casella viene visualizzato
come
> voluto al suo interno il numero mantiene tutti i decimali del caso)  e
> utilizzarlo in Sqlservedr per i calcoli monetari vuoi dire andare incontro
a
> guai sicuri.
Infatti ho cambiato float come mi hai detto in Decimal.
> Quindi...
> -------------------
> CASE WHEN ([PrezzoVendita] Is Null Or [Quantità] Is Null)
>            THEN 0
>            ELSE
>
>
ROUND([PrezzoVendita]-([PrezzoVendita]*[Sconto]/100))*([Quantità])+([Importo
> ]),2)
>           END AS PrezzoTotale
> ----------------------
>
Dopo quello che ti ho scritto sopra tra i punti che mi hai messo....veniamo
a quello dolente:
La store non mi funziona.....mi dà errore sia in vista che in store di
procedure.
L'errore è:
Errore DAO: The round function requires 2 to 3 arguments
Allora ti posto come ho scritto io ok?
--------------------------------------------------------------------
Alter Procedure StoredProcedure1
/*
 (
  @parameter1 datatype = default value,
  @parameter2 datatype OUTPUT
 )
*/
As SELECT Clienti.IDCliente, Clienti.Contratto,
    DettaglioOfferta.IDOfferte, DettaglioOfferta.IDProdotto,
    DettaglioOfferta.Fornitore, DettaglioOfferta.Quantità,
    DettaglioOfferta.PrezzoVendita, DettaglioOfferta.ColoreMerce,
    DettaglioOfferta.Operazione, DettaglioOfferta.CausaleImporto,
    DettaglioOfferta.Importo, DettaglioOfferta.DescrizioneIta,
    DettaglioOfferta.Lingua, DettaglioOfferta.Riga,
    Prodotto.Annullato, Prodotto.Elemento, Prodotto.NomeInglese,
    Prodotto.NomeFrancese, Prodotto.NomeProdotto,
    CASE WHEN ([PrezzoVendita] IS NULL OR
    [Quantità] IS NULL)
    THEN 0 ELSE ROUND([PrezzoVendita] - ([PrezzoVendita] * [Sconto]
     / 100)) * ([Quantità]) + ([Importo]), 2)
END AS PrezzoTotale
FROM Prodotto INNER JOIN
    DettaglioOfferta ON
    Prodotto.IDProdotto = DettaglioOfferta.IDProdotto INNER JOIN
    Offerta ON
    DettaglioOfferta.IDOfferte = Offerta.IDOfferte INNER JOIN
    Clienti ON Offerta.IDCliente = Clienti.IDCliente
WHERE (Prodotto.Annullato = 0)
 /* set nocount on */
 return
 Non capisco cosa c'è che non va.......
Grazie a tutti per il Vostro preziosissimo aiuto!!!!!
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:pKuPa.23414$qa5.5...@news2.tin.it...
>
>
[CUT]

Ciao
E solo un errore di parentesi
ROUND(([PrezzoVendita] - [PrezzoVendita] * [Sconto]/ 100) * [Quantità] +
[Importo], 2)
Ciao Giorgio.


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:beltuh$cl7$1...@lacerta.tiscalinet.it...

Ciao Giorgio ora funziona! :)
Certo che potevo anche accorgermene che mancava una parentesi.......solo che
è la prima volta che uso MSDE e mi trovo veramente spiazzato!
Da access avevo creato tante query che ora mi ritrovo inutili oltretutto
devo anche capite questo benedetto T-SQL.
Una cosa che ti volevo chiedere. Ora questa store funziona solo che all'atto
visivo, vedo che il PrezzoTotale (oggetto di tutta questa store) è senza
numeri decimali, è normale questo? Lo si può vedere solo dalla maschera?
Grazie ancora per la tua grande e immensa pazienza!
Ciao Ultra.


title: Access MSDE

text:
"OneEDP" <
one.emme...@tin.it
> ha scritto nel messaggio
news:xggPa.164131$lK4.4...@twister1.libero.it...

Si mi interesserebbe il link per scaricare la documentazione in linea grazie
mille!!!!
Ciao
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:BevPa.14609$it4.3...@news1.tin.it...
>
> "Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
> news:beltuh$cl7$1...@lacerta.tiscalinet.it...
> >
> > "ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
> > news:pKuPa.23414$qa5.5...@news2.tin.it...
> > >
> > >
> > [CUT]
> > > >
> > >
> Ciao Giorgio ora funziona! :)
> Certo che potevo anche accorgermene che mancava una parentesi.......solo
che
> è la prima volta che uso MSDE e mi trovo veramente spiazzato!
> Da access avevo creato tante query che ora mi ritrovo inutili oltretutto
> devo anche capite questo benedetto T-SQL.
> Una cosa che ti volevo chiedere. Ora questa store funziona solo che
all'atto
> visivo, vedo che il PrezzoTotale (oggetto di tutta questa store) è senza
> numeri decimali, è normale questo? Lo si può vedere solo dalla maschera?
>
> Grazie ancora per la tua grande e immensa pazienza!
>
> Ciao Ultra.
>
>
Ciao ultrareflex
La Sp deve ritornare il totale con i decimali del caso, se ad esempio
moltiplichi due campi con tipo di dato DECIMAL(28,2) tra di loro la Sp rende
il risultato nel tipo di dato DECIMAL(38,4) . Access arriva al max a
DECIMAL(28,x) e non riesce ad interpretare DECIMAL(38,x) quindi lo converte
in stringa e tu lo vedi come 12500.32, non è un grosso problema in maschera
o in report metterai nel'origine dati del controllo =Val(([PrezzoVendita]) e
quindi lo vedrai come 12500,32.
Un altra causa per cui non vedi i decimali può essere quella di non aver
messo la scala nel campo. Hai impostato correttamente i campi decimal ? Che
valori ai inserito in corrispondenza di Precisione e di Scala ?. Precisione
indica il max numero di cifre memorizzabili decimali compresi e Scale indica
il numero di decimali. Io di solito utilizzo DECIMAL(28,2) ovvero 26 cifre
intere e due decimali.
Prova a postarmi che tipo di dato hai utilizzato per :
[PrezzoVendita] , [Sconto], [Quantità] e [Importo]
Così vediamo di scoprire perchè non ti rende decimali.
Ciao Giorgio.


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:XOvPa.24038$qa5.5...@news2.tin.it...

http://www.microsoft.com/italy/sql/techinfo/productdoc/2000/books.asp



title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bem1t7$ehd$1...@lacerta.tiscalinet.it...

Eccomi a te Giorgio, dunque lo sconto come tutti gli altri hanno:
Lunghezza: 9
Precisione: 18
Scala: 2
Ovviamente sono DECIMAL.
Anche sulla tabella li vedo sempre e comunque senza decimali.
Grazie ancora per il tuo aiuto!
Grazie
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:HowPa.24365$qa5.5...@news2.tin.it...
>
> "Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
> news:bem1t7$ehd$1...@lacerta.tiscalinet.it...
> >
> > "ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
> > news:BevPa.14609$it4.3...@news1.tin.it...
> > >
> > > "Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel
messaggio
> > > news:beltuh$cl7$1...@lacerta.tiscalinet.it...
> > > >
> > > > "ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
> > > > news:pKuPa.23414$qa5.5...@news2.tin.it...
> > > > >
> > > > >
> > > > [CUT]
> > > > > >
> > > > >
> Eccomi a te Giorgio, dunque lo sconto come tutti gli altri hanno:
>
> Lunghezza: 9
> Precisione: 18
> Scala: 2
> Ovviamente sono DECIMAL.
>
> Anche sulla tabella li vedo sempre e comunque senza decimali.
> Grazie ancora per il tuo aiuto!
>
> Grazie
>
> Ultra
>
>
>
Ciao Ultra
I campi sono OK quindi se sulla tabella non vedi i decimali significa che la
cifra è stata memorizzata senza decimali. Ho provato a simulare la tua sp e
questo è il risultato.
Prezzovendita|Quantità|Sconto|Importo|  Prezzo totale
        25         |      100 |     10 |    1000 |  3250.000000
        12         |          8 |       2 |        16 |  110.080000
        16         |          1 |    8,5 |        18 |   32.640000
Come vedi se imputo cifre senza decimali vengono visualizzate senza decimali
(la formattazione è compito del form o del report) e il Prezzo totale viene
reso nel tipo di dato Decimal Precisione 38 scala 6 che Access2K  non
interpreta in modo corretto, ma questo non è un problema perché in form o in
report basta mettere in origine controllo =Val([Prezzo totale]).
Prova ad inserire nella tabella importi con decimali, esegui la Sp
direttamente dala sezione Query di  Access e controlla i risultati. Se hai
problemi prova a postare il risultato come ho fatto io.
Un piccolo appunto, se togli il flag Ammetti Null per i campi [Prezzo
vendita] e [Quantità] dalla struttura tabella puoi evitare l'istruzione
CASE, ma questo non ha nulla a che fare con i decimali.
Ciao Giorgio.


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bem939$igd$1...@lacerta.tiscalinet.it...

Ciao Giorgio, ok ho provato, ma i decimali rimangono sempre gli
stessi......sto cercando di cancellare le vecchie informazioni che ho
incollato in questo db...tante volte le avesse lette male.....
Appena lo faccio ti metto al corrente!
Grazie ancora
Ultra!


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:kfsQa.26544$it4.7...@news1.tin.it...

Ciao Giorgio, scusa se ti rompo le scatole di nuovo.......
Ho fatto tutto quello che potevo per far funzionare l'MSDE ora che lancio la
maschera non posso passare ai nuovi record......mi dà questo messaggio:
La maschera è di sola lettura perchè la proprietà tabella univoca non è
impostata
Che vuol dire? La tabella l'ho controllata e va bene....... mi sai dire
qualcosa tu?
Ciao e grazie
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:OMsQa.42710$qa5.1...@news2.tin.it...
>
> "ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
> news:kfsQa.26544$it4.7...@news1.tin.it...
> >
> > "Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
> > news:bem939$igd$1...@lacerta.tiscalinet.it...
> > >
>
> Ciao Giorgio, scusa se ti rompo le scatole di nuovo.......
> Ho fatto tutto quello che potevo per far funzionare l'MSDE ora che lancio
la
> maschera non posso passare ai nuovi record......mi dà questo messaggio:
>
> La maschera è di sola lettura perchè la proprietà tabella univoca non è
> impostata
>
> Che vuol dire? La tabella l'ho controllata e va bene....... mi sai dire
> qualcosa tu?
>
> Ciao e grazie
>
> Ultra
>
Ciao
Per poterti aiutare dovrei conoscere l'origine record della maschera, prova
a postare il contenuto della proprietà Origine record, e se è una vista il
codice Sql Della vista. Forse l'origine record della maschera è la famosa
StoredProcedure1 ?
Ciao Giorgio.


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:betp60$e2p$1...@lacerta.tiscalinet.it...
>
> > Ciao Giorgio, scusa se ti rompo le scatole di nuovo.......
> > Ho fatto tutto quello che potevo per far funzionare l'MSDE ora che
lancio
> la
> > maschera non posso passare ai nuovi record......mi dà questo messaggio:
> >
> > La maschera è di sola lettura perchè la proprietà tabella univoca non è
> > impostata
> >
> > Che vuol dire? La tabella l'ho controllata e va bene....... mi sai dire
> > qualcosa tu?
> >
> > Ciao e grazie
> >
> > Ultra
> >
>
> Ciao
>
> Per poterti aiutare dovrei conoscere l'origine record della maschera,
prova
> a postare il contenuto della proprietà Origine record, e se è una vista il
> codice Sql Della vista. Forse l'origine record della maschera è la famosa
> StoredProcedure1 ?
>
> Ciao Giorgio.
Ciao Giorgio,
Innanzi tutto grazie per il tuo aiuto.
Allora la maschera Offerte ha una vista come origine record (prende la
tabella clienti e la tabella Offerte), dentro questa maschera ci sono 2
sottomaschere, una  si chiama dettaglioOfferte (ed ha la famosa store1 come
origine record  e l'altra dettaglioOfferteVisivo che ha la stessa store1.
Ora ho controllato nella maschera le sue proprietà e ho visto che esiste una
proprietà chiamata Tabella Univoca, mi fa vedere Clienti e offerte, ma se
inserisco l'una o l'altra nella maschera non mi fa inserire i dati nella
Sottomaschera DettaglioOfferte. Tantomeno poi quando con la maschera
principale vado a nuovo record, la sottomaschera rimane invariata....
Non ci capisco più nulla.
Qualche idea?
Grazie Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:ZStQa.43253$qa5.1...@news2.tin.it...

Ciao Ultra
Un SubForm o un SubReport non può avere una Sp come origine record (devi
usare una vista) in quanto una Sp non può essere utilizzata nella clausola
FROM di una query (Query che access compone ad ogni cambio record).
Per quanto riguarda il form principale la Tabella univoca è quella delle
offerte e comunque dovrebbe funzionare, a tale proposito ti invito ad
analizzare l'esempio NorthWindCs.Adp disponibile nella cartella
\Programmi\Microsoft Office\Office 10\Samples, o premendo ?-->Database di
esempio-->Progetto di esempio NorthWind.
Ciao Giorgio.


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:beu66s$ljc$1...@lacerta.tiscalinet.it...

Ciao Giorgio, ora funziona come dicevi tu..solo che mi trovo male con le
routine, ne ho una con un'istruzione SELECT che non va a buon fine. Devo
modificarle tutte vero? Che stranezza dover modificare tutto......
Per esempio questa:
Dim strFiltro As String, strSQL As String
  Dim rs As Recordset
    ' Valuta il filtro prima di passarlo alla funzione DLookup.
    strFiltro = "IDProdotto = " & Me!IDProdotto
    strSQL = "SELECT CondizioniContratto.ValidoDal,
CondizioniContratto.FinoAl, CondizioniContratto.Elemento,
Contratti.IDContratti, CondizioniContratto.Prezzo"
    strSQL = strSQL & " FROM CondizioniContratto INNER JOIN Contratti ON
CondizioniContratto.IDSconti = Contratti.IDSconti"
    strSQL = strSQL & " WHERE (((CondizioniContratto.ValidoDal)<=#" & Date &
"#) AND ((CondizioniContratto.FinoAl)>=#" & Date & "#) AND
((CondizioniContratto.Elemento)= '" &
Forms!Offerte01!DettaglioOrdiniComplessivo3!IDProdotto.Column(4) & "') AND
((Contratti.IDContratti)='" & Me!Contratto & "'))"
    Set rs = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset)
    If rs.EOF And rs.BOF Then
        ' Cerca il prezzo unitario del prodotto e lo assegna al controllo
PrezzoUnitario.
        Me!PrezzoVendita = DLookup("Prezzo", "SelezionaPrezzoUnitario",
strFiltro)
    Else
        Me!PrezzoVendita = rs!Prezzo
    End If
Di questa mi dà errore e mi dice che non è impostato il valore With. (che
accidenti centra........)
Grazie ancora di tutto!
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:IByQa.28702$it4.7...@news1.tin.it...
>
> "Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
> news:beu66s$ljc$1...@lacerta.tiscalinet.it...
>

Ciao Ultra
Con SqlServer non puoi passare le date con  #Data#,  non le capisce,  il
modo più comodo è utilizzare la conversione implicita da stringa a data nel
formato aaaammgg
.....CondizioniContratto.ValidoDal<=" & Format(Date,"yyyymmdd") & " AND
......
O utilizzare la funzione CONVERT (Hai scaricato il manuale di SqlServer ?)
ma è più scomoda.
Troverai altre sistuazioni da sistemare, il passaggio non è indolore, ma la
conta dei vantaggi è nettamante superiore agli svantaggi e ripaga lo sforzo
iniziale.
Ciao Giorgio


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:beumfi$pf$1...@lacerta.tiscalinet.it...
>
> "ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
> news:IByQa.28702$it4.7...@news1.tin.it...
> >
> > "Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
> > news:beu66s$ljc$1...@lacerta.tiscalinet.it...
> >
>
Scusa ho scritto conversione imlicita da stringa ma ho dimenticato di
racchiuderla tra apici
 .....CondizioniContratto.ValidoDal<='" & Format(Date,"yyyymmdd") & "' AND
ecc...
Ciao Giorgio


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:beurd2$43p$1...@lacerta.tiscalinet.it...

Ciao Giorgio, ho provato a rifare tutto come mi hai detto tu ma nulla da
fare ho sempre un blocco e non riesco a capire il perchč, oltre alla data
che non riconosceva non capisco cosa blocchi la form......
ti riposto il codice.....
Dim strFiltro As String, strSQL As String
 Dim Db As Database
  Dim rs As Recordset
    ' Valuta il filtro prima di passarlo alla funzione DLookup.
    strFiltro = "IDProdotto = " & Me!IDProdotto
    strSQL = "SELECT CondizioniContratto.ValidoDal,
CondizioniContratto.FinoAl, CondizioniContratto.Elemento,
Contratti.IDContratti, CondizioniContratto.Prezzo"
    strSQL = strSQL & " FROM CondizioniContratto INNER JOIN Contratti ON
CondizioniContratto.IDSconti = Contratti.IDSconti"
    strSQL = strSQL & " WHERE (((CondizioniContratto.ValidoDal<='" &
Format(Date, "yyyymmdd") & "' AND((CondizioniContratto.FinoAl)>='" &
Format(Date, "yyyymmdd") & "' AND ((CondizioniContratto.Elemento)= '" &
Forms!Offerte01!DettaglioOrdiniComplessivo3!IDProdotto.Column(8) & "') AND
((Contratti.IDContratti)='" & Me!Contratto & "'))"
    Set rs = Db.OpenRecordset(strSQL, dbOpenSnapshot)
    If rs.EOF And rs.BOF Then
        ' Cerca il prezzo unitario del prodotto e lo assegna al controllo
PrezzoUnitario.
        Me!PrezzoVendita = DLookup("Prezzo", "SelezionaPrezzoUnitario",
strFiltro)
    Else
        Me!PrezzoVendita = rs!Prezzo
    End If
L'errore che continua a venire č: Variabile oggetto o variabile del blocco
with non impostata.
E' strano visto che č tutto normale....almeno su access......
Grazie ancora
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:FNNQa.54034$qa5.1...@news2.tin.it...
>
> "Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
> news:beurd2$43p$1...@lacerta.tiscalinet.it...
> >
> > "Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
> > news:beumfi$pf$1...@lacerta.tiscalinet.it...
> > >
> > > "ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
> > > news:IByQa.28702$it4.7...@news1.tin.it...
> > > >
> > > > "Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel
> messaggio
> > > > news:beu66s$ljc$1...@lacerta.tiscalinet.it...
> > > >
> > >
> >
> > Scusa ho scritto conversione imlicita da stringa ma ho dimenticato di
> > racchiuderla tra apici
> >
> >  .....CondizioniContratto.ValidoDal<='" & Format(Date,"yyyymmdd") & "'
AND
> > ecc...
> >
> > Ciao Giorgio
>
>
> Ciao Giorgio, ho provato a rifare tutto come mi hai detto tu ma nulla da
> fare ho sempre un blocco e non riesco a capire il perchè, oltre alla data

> L'errore che continua a venire è: Variabile oggetto o variabile del blocco
> with non impostata.
>
> E' strano visto che è tutto normale....almeno su access......
>
> Grazie ancora
>
> Ultra
>
>
>
Ciao Ultra
E' normale ricevere questo tipo di errore quando non si valorizza la
variabile Db, quando fai  "Set rs = Db.OpenRecordset(strSQL,
dbOpenSnapshot)", Db a che cosa si riferisce ???.
Ad ogni modo stai utilizzando DAO e a meno di non ricorrere ai drivers ODBC
non può colloquiare con il server.
Togli i riferimenti a DAO e metti quelli a ADO e cominciamo a sistemare
l'apertura del recordset:
-------------------------------------
Dim strFiltro As String,  strSQL As String
'Dichiaro la variabile Rs come ADODB.Recordset
Dim Rs As ADODB.Recordset
'La valorizzo ovvero viene inizializzata in memoria
Set Rs = New ADODB.Recordset
' Valuta il filtro prima di passarlo alla funzione DLookup.
   strFiltro = "IDProdotto = " & Me!IDProdotto
'Componi la query
   strSQL = "SELECT ... ecc... ecc...."
'Apro il recordset sulla connessione al database già aperta dal progetto di
access
Rs.Open strSQL, CurrentProject.Connection
If rs.EOF And rs.BOF Then
     ' Cerca il prezzo unitario del prodotto e lo assegna al controllo
PrezzoUnitario.
     Me!PrezzoVendita = DLookup("Prezzo",
"SelezionaPrezzoUnitario",strFiltro)
Else
     Me!PrezzoVendita = rs!Prezzo
End If
Rs.close
Set Rs=Nothing
-------------------------


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bf0c3n$knk$1...@lacerta.tiscalinet.it...

Ciao Giorgio ora funziona....
Grazie mille per la tua pazienza, denoto che fai tutto ciò con passione,
quando (e se) consegnerò il db ti darò una parte del compenso :))))
Volevo chiederti un'altra cosa...come si fa sulle viste a far vedere non
solo 10000 record? Sulle maschere c'è il pulsante e va bene oppure lo
imposto sulla proprietà maschera ma sulle viste??
Per quanto riguarda prima, io avevo lasciato tutto impostato come in access
(è difficile togliersi il vizio dopo 4 anni!!)
io avevo valorizzato il Set DB as Database (invece non è così).
Grazie ancora per tutto!!
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:%BPQa.32509$it4.8...@news1.tin.it...

Ciao Ultra
Per togliere il limite del numero record restituiti (vale per tutti gli
oggetti del db maschere,Report,Tabelle,Viste,StoredProc, Funzioni ) devi
mettere a 0 il valore in "Numero massimo record predefinito" dal menu
Strumenti-->Opzioni quindi scheda Avanzate, un altro parametro importante è
TimeOut OLE/DDE che indica il tempo max in secondi dopo il quale la
connessione và in errore se non c'è risposta dal server. Io ho impostato
questo valore a 0 (infinito)  perchè se il server è molto occupato
preferisco attendere che ripetere l'operazione.
Non c'è bisogno di ringraziare, nell' Ng tutti insegnano e tutti imparano.
Ciao Giorgio.


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bf0mps$qvp$1...@lacerta.tiscalinet.it...
>
> Ciao Ultra
>
> Per togliere il limite del numero record restituiti (vale per tutti gli
> oggetti del db maschere,Report,Tabelle,Viste,StoredProc, Funzioni ) devi
> mettere a 0 il valore in "Numero massimo record predefinito" dal menu
> Strumenti-->Opzioni quindi scheda Avanzate, un altro parametro importante
è
> TimeOut OLE/DDE che indica il tempo max in secondi dopo il quale la
> connessione và in errore se non c'è risposta dal server. Io ho impostato
> questo valore a 0 (infinito)  perchè se il server è molto occupato
> preferisco attendere che ripetere l'operazione.
>
> Non c'è bisogno di ringraziare, nell' Ng tutti insegnano e tutti imparano.
>
> Ciao Giorgio.
Ciao Giorgio, vista la tua disponibilità, ti chiedo una cosa ulteriore,
nella SubForm di Offerte01 ossia dettaglioOfferta, l'origine record è una
vista. Solo che l'ho creata con il codice SQL visto che c'era quel discorso
della CASE WHEN.......
Ora all'interno di questa subform ho una combo box scegliendo un dato al suo
interno, di norma si dovrebbero riempire anche gli altri campi, che fanno
parte di quel record, invece no, non me li visualizza, lo fa solo dopo che
io cambio record. Nella form principale ho un'altra combo che funziona alla
perfezione, solo che la vista l'ho creata manualmente, ossia senza codice
SQL. Come mai questo problema? Si può risolvere?
Grazie
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:kZSQa.34039$it4.8...@news1.tin.it...

Ciao Ultra
Se guardi l'esempio NorthWindCS.Adp noterai che nell'evento After Update
della combobox viene eseguito il codice RunCommand acCmdSaveRecord per
scrivere il record e rendere visibili nei controlli il contenuto dei campi.
A tale proposito c'è anche una KB della Microsoft che in questo momento non
riesco a trovare, comunque è un comportamento normale.
Ciao Giorgio.


title: Access MSDE

text:
 "ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
> > Ciao Giorgio, vista la tua disponibilità, ti chiedo una cosa ulteriore,
> > nella SubForm di Offerte01 ossia dettaglioOfferta, l'origine record è
una
> > vista. Solo che l'ho creata con il codice SQL visto che c'era quel
> discorso
> > della CASE WHEN.......
> > Ora all'interno di questa subform ho una combo box scegliendo un dato al
> suo
> > interno, di norma si dovrebbero riempire anche gli altri campi, che
fanno
> > parte di quel record, invece no, non me li visualizza, lo fa solo dopo
che
> > io cambio record. Nella form principale ho un'altra combo che funziona
> alla
> > perfezione, solo che la vista l'ho creata manualmente, ossia senza
codice
> > SQL. Come mai questo problema? Si può risolvere?
> >
> > Grazie
> >
> > Ultra
> >
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bf142r$2oh$1...@lacerta.tiscalinet.it...
> Ciao Ultra
> Se guardi l'esempio NorthWindCS.Adp noterai che nell'evento After Update
> della combobox viene eseguito il codice RunCommand acCmdSaveRecord per
> scrivere il record e rendere visibili nei controlli il contenuto dei
campi.
> A tale proposito c'è anche una KB della Microsoft che in questo momento
non
> riesco a trovare, comunque è un comportamento normale.
>
> Ciao Giorgio.
Ciao Giorgio, ho visto l'esempio, e va bene....insomma....mi aggiorna tutto
ancora prima di confermare l'articolo......
Non esiste un modo per fare il RunCommand solo per la finestra attiva e non
per tutta la form?
Ciao e grazie
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:09WQa.60814$qa5.1...@news2.tin.it...
> "ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
>
>
> Ciao Giorgio, ho visto l'esempio, e va bene....insomma....mi aggiorna
tutto
> ancora prima di confermare l'articolo......
> Non esiste un modo per fare il RunCommand solo per la finestra attiva e
non
> per tutta la form?
>
> Ciao e grazie
>
> Ultra
>
Ciao Ultra
In casi come questo io preferisco la ridondanza dei dati  all'avere come
origine record due o più tabelle che comportano le implicazioni a cui stai
andando incontro, per esempio l'impossibilità di eseguire i controlli del
caso nell'evento Before Update.
O se un campo non deve essere  assolutamente ridondante all'origine del
controllo inserisco un bel =Dlookup(....) o una funzione VBA che mi rende il
valore dalla tabella, l'aspetto negativo è l'aumento del traffico in rete ma
non vedo altra strada.
Non ho mai tentato di sistemare gli inconvenienti del sistema suggerito
nell'esempio di NorthWind in quanto vedo più svantaggi che altro.
Ciao Giorgio.


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:6P7Ra.64563$qa5.1...@news2.tin.it...
>
> "Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
> news:bf1nbp$eml$1...@lacerta.tiscalinet.it...

> Ciao Giorgio, proverò con un bel DLookup e vedrò come poter sistemare la
> situazione. Quindi ogni volta che ho un After Update che è collegato ad
una
> combo non funzionerà giusto? Funziona solo sulla tabella primaria.....
> Ciò significa che ogni cosa che ho creato deve essere ripresa, riveduta e
> delle volte sarà necessario cambiare tecnica.
> Volevo sapere un'altra cosa. Ho una casella di testo dentro alla subform
> dettaglioOrdini, che ha un valore predefinito di questo tipo:
>
> ="" & Format([Forms]![Offerte01]![IDOfferte];"0000") & "/" &
> Format(IIf(IsNull(DMax("[Riga]";"[DettaglioOfferta]";"[Riga] like '" &
> Format([Forms]![Offerte01]![IDOfferte];"0000") &
> "/????'"));4;Right(DMax("[Riga]";"[DettaglioOfferta]";"[Riga] like '" &
> Format([Forms]![Offerte01]![IDOfferte];"0000") & "/????'");4)+3);"0000")
>
> All'apertura, ti dà il primo valore e fin quì tutto bene, poi al cambio
del
> record, rimane invariato. Come posso ovviare a questa cosa? E' molto
> importante questo valore, devo in tutti modi farlo funzionare.
>
> Grazie
>
> Ultra
>
>
Ciao Ultra
Mi sono spiegato male, nell'esempio NorthWindCs viene scritto il record non
appena si è selezionato il cliente (vedi evento CustomerID_AfterUpdate della
combo del cliente), questo per far comparire indirizzo città ecc. Questa
tecnica rende inutile i vari controlli software che fai nell'evento
Form_BeforeInsert e Form_BeforeUpdate perchè di fatto sei costretto a
scrivere il record anche se tutti i campi non sono compilati secondo le
regole del caso.
Passiamo al tuo problema del valore predefinito, il filtro LIKE in SqlServer
ha caratteri jolli differenti da Access quindi la tua Dmax  rileva sempre
null. Ti posto la tabella dei caratteri Jolly
Da Book On Line
----------------------------------
Carattere jolly Descrizione Esempio
% Stringa di zero o più caratteri WHERE title LIKE '%computer%' consente di
individuare tutti i titoli di libri che contengono la parola "computer".
_ (carattere di sottolineatura) Carattere singolo WHERE au_fname LIKE '_ean'
consente di individuare tutti i nomi di persona composti da quattro lettere
che terminano in "ean" (Dean, Sean e così via).
[ ] Carattere singolo compreso nell'intervallo ([a-f]) o set ([abcdef])
specificato WHERE au_lname LIKE '[C-P]arsen' consente di individuare tutti
gli autori il cui cognome termina in "arsen" e inizia con un carattere
compreso tra C e P, ad esempio Carsen, Larsen, Karsen e così via.
[^] Carattere singolo non compreso nell'intervallo ([^a-f]) o set
([^abcdef]) specificato WHERE au_lname LIKE 'de[^l]%' consente di
individuare tutti gli autori il cui cognome inizia con "de" e la lettera
successiva è diversa da "l".
---------------------------------
Come vedi * è sostituito da % e ? è sostituito da _.
Hai Scaricato il manuale di SqlServer ? ti verrà utile, ad esempio le
funzioni Mid()  Instr() esistono sotto altri nomi.
Ciao Giorgio.


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bf385h$ufj$1...@lacerta.tiscalinet.it...

Ciao Giorgio,
Ho letto il tuo post almeno 4 volte....ma l'unica cosa che ho capito è stata
solo che devo sostituire il ? con _
Per il resto il like che mi hai dato non l'ho capito visto che la mia
"stringa" come valore predefinito utilizza like è vero ma solo per
identificare il valore di riga....almeno credo.....e non capisco quale dei
tanti casi dovrei utilizzare.....il manuale l'ho scaricato ma ci capisco ben
poco....ci sto mettendo tutta la buona volontà e prima o poi lo imparo!!
Grazie ancora
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:EHrRa.80966$qa5.1...@news2.tin.it...

Ciao Giorgio, forse ho trovato la soluzione, volevo creare una vista oppure
una store di procedure per far si che mi visualizzi i numeri delle righe che
sono state impegnate nella tabella DettaglioOfferta. A questo proposito,
questa vista o store dovrebbe visualizzarmi solo i numeri riga di quella
determinata offerta (una volta si usava il classico criterio
Forms!Offerta01!IDOfferte)
Ora questa cosa non funziona ahimè e guardando la guida in linea ho notato
che con la store lo si può fare...solo che mi sono leggermente perso nei
meandri delle chioccioline (@) non è che ancora ci capisco granchè!)
In poche parole io dovrei avere una sola tabella chiamata DettaglioOfferta
da li ricavare solo 2 campi: IDOfferte e Riga.
Da questi dire alla store di visualizzarmi solamente i record che hanno
l'IDOfferta uguale a quello aperto in quel momento nella maschera Offerte01.
Secondo te si può fare?
Grazie ancora
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:sXzRa.88174$qa5.1...@news2.tin.it...
>
> "ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
> news:EHrRa.80966$qa5.1...@news2.tin.it...
> >
>
> Ciao Giorgio, forse ho trovato la soluzione, volevo creare una vista
oppure
> una store di procedure per far si che mi visualizzi i numeri delle righe
che
> sono state impegnate nella tabella DettaglioOfferta. A questo proposito,
> questa vista o store dovrebbe visualizzarmi solo i numeri riga di quella
> determinata offerta (una volta si usava il classico criterio
> Forms!Offerta01!IDOfferte)
> Ora questa cosa non funziona ahimè e guardando la guida in linea ho notato
> che con la store lo si può fare...solo che mi sono leggermente perso nei
> meandri delle chioccioline (@) non è che ancora ci capisco granchè!)
> In poche parole io dovrei avere una sola tabella chiamata DettaglioOfferta
> da li ricavare solo 2 campi: IDOfferte e Riga.
> Da questi dire alla store di visualizzarmi solamente i record che hanno
> l'IDOfferta uguale a quello aperto in quel momento nella maschera
Offerte01.
> Secondo te si può fare?
>
> Grazie ancora
>
> Ultra
>
>
Ciao Ultra
Se utilizzi una subform per il dettaglio offerta il funzionamento è identico
ai db di Access ovvero nella proprietà della subform Campi secondari metti
IDOfferte che è relativo alla tabella dettaglio e in campi master metti
IDOfferta che è relativo alla tabella Offerte e il tutto funziona
automaticamente.
Se invece usi una form staccata per il dettaglio allora puoi utilizzare la
Stored procedure che ha come parametro in input IDOfferta.
Esempio di Sp
-------------------------
CREATE PROCEDURE usp_DettaglioOfferta
(@IdOfferte int)
AS
SELECT     *
FROM       DettaglioOfferta
WHERE     (IDOfferta = @IdOfferte)
Order By Riga
-------------------------
Nella Form Dettaglio inserirai nella proprietà Parametri input
?=Forms!Offerta01.T_IDOfferte dove T_IDOfferte è il controllo visibile o
nascosto associato al campo IdOfferte. A questo punto ad ogni cambio di
record del Form Offerta01 devi eseguire una requery del form
DettagioOfferta.
Ciao Giorgio


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bf6s0e$p7i$1...@lacerta.tiscalinet.it...

Ciao Giorgio,
grazie per la tua risposta, ma scusami mi sono espresso male io e non mi
sono purtroppo fatto capire.
Io ho già la subform DettaglioOfferta collegata alla form principale tramite
IDOfferte in Master e secondari.
Quello che serviva a me era una query (come quelle di access). In questa
query (che non deve essere origine record della subform) devo inserire tre
campi della tabella DettaglioOfferta: IDOfferte e Riga mettendo magari anche
il campo Esercizio per avere dei risultati veramente Univoci.
Hai in mente che nelle query di access, nei criteri è possibile inserire
anche il campo di un'altra form per far si che visualizzi dei dati
particolari giusto?. Tipo nei criteri il Forms!Offerte01!IDOfferte. In modo
che quando apri la query questa ti mostra (sempre che la form Offerte01 sia
aperta) i dati che vengono filtrati da quell'IDOfferte messo nei criteri
query. Questo mi serve perchè:
Nella subform DettaglioOfferte c'è il campo riga, Questa riga deve indicarmi
quante righe di
dettaglio inserirò nell'offerta. Tu mi chiederai che potrei fare
CurrentRecord. Ma il mio cliente dopo aver inserito metti 40 righe, si
accorgesse che deve inserirne magari una sopra alla riga 4, come potrebbe
fare? Sarebbe impossibile in questo modo. Allora ho progettato questo
sistema che su access funziona benissimo ma su SQL no. Sul controllo
Before_Update della subform DettaglioOfferta, inserisco una routine che
utilizza il DMax. Se il Dmax lo faccio lavorare sulla Tbl_DettaglioOfferta,
lui mi darà come risultato il valore + grande di tutta la tabella
indifferentemente dal numero offerta. Invece se io il dmax gli e lo faccio
calcolare su una query che mi si apre filtrando i dati sul numero di offerta
che in quel
momento è aperta, se non trova nulla mi restituisce null (ed io gli dico che
se è null mi inserisce 3 nella casella) se invece trova <>Null allora mi dà
il numero maggiore delle righe che effettivamente ho inserito in
quell'offerta e non di tutte. Questo mi permette di avere: Il campo Riga
azzerato ad ogni cambio di Offerta, la possibilità di inserire righe 3x3
invece che come un contatore 1 per 1 in modo da lasciare un buco per
eventuali inserimenti.
Quindi quello di cui ho bisogno è di una query (Store in questo caso) che
basi il tutto sulla Tbl_DettaglioOfferte. che metta 3 campi: IDOfferte,
Riga, Esercizio. Poi con una formula (non sò quale) che dica alla store di
Restituirmi tutti i record in cui l'IDOfferta sia uguale all'IDOfferta della
form_Offerte01 che è aperta in quel momento (Su access2000 nella query nei
criteri si mette Forms!Offerte01!IDOfferte).
Spero di essermi spiegato...avvolte è difficile, ho in mente tante cose e
con il tempo trovo anche delle belle soluzioni, ma ci  vuole tempo e
soprattutto tanta dedizione.
Grazie ancora
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:dGNRa.49060$it4.1...@news1.tin.it...

Ciao Ultra
Di solito per numerare un contatore utilizzavo questo metodo  (Metodo che
funziona sia in Access che in Sqlserver) ovvero creo una funzione nel
subform interessato, ti faccio un esempio mirato al tuo problema...
Funzione da inserire nel subform
-------------------------
Function Get_New_Riga() As Long
    Dim Result As Variant
    Result=Dmax("Riga", _
                          "Tbl_DettaglioOfferte", _
                          "IDOfferta = " & Me.Parent!IdOfferta & _
                          " AND Esercizio=" & Me.Parent!Esercizio)
   'Se esercizio è stringa racchiudilo tra singili apici
    Result=Nz(Result,1)+3
    Get_New_Riga = Result
End Function
A Fronte dell'evento BeforeInsert della subform inserisci
---------------------------------------------
Private Sub Form_BeforeInsert(Cancel As Integer)
   'Se l'operatore non ha inserito nessun valore
    If Nzz(Me.T_Riga, 0) = 0 Then
       'Leggo valore Max+3
       Me.T_Riga = Get_New_Riga()
    End If
End Sub
----------------------------------------------
Me.T_Riga è il controllo associato al campo Riga, io distinguo sempre il
nome del controllo dal nome del campo associato per evitare confusione.
La stessa cosa è possibile farla fare direttamente dal server con un
Trigger, ma non vorrei mettere troppa carne sul fuoco.
Spero di aver capito il tuo problema
Ciao Giorgio.


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bf8e2j$9ca$1...@lacerta.tiscalinet.it...

Ciao Giorgio, la tua idea è OTTIMA :)
però senti, non è possibile creare un criterio su SQL come si faceva con
Query di access2000? Intendo il forms!etc.etc.....
Grazie ancora!!
Luigi


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:xlTRa.94566$qa5.1...@news2.tin.it...

Con Jet di Access tu potevi inserire in una query i riferimenti a un
controllo di una maschera o una funzione in un modulo bas o una istruzione
vba. Con SqlServer scordati tutto questo devi passargli la stringa SQL già
composta di tutti i valori e i riferimenti al linguaggio sono strettamente
istruzioni T-Sql. Questa differenza è data dal fatto che jet non è un
Database Server e il tutto gira nella memoria del tuo Pc. Prova a pensare a
un ServerSql che sta in Giappone, che lavoro dovrebbe fare per recuperare i
riferimenti remoti dalla memoria dei vari client ??
Ciao Giorgio


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bf94vo$mt2$1...@lacerta.tiscalinet.it...

Ciao Giorgio,
anche questa volta non posso darti torto.
Quindi mi devo dimenticare tutte quelle "belle" formulette che tanto aiutano
in questi casi...invece adesso devo girare intorno
alla cosa per fargli fare la stessa operazione. Spesso e volentieri non
posso dare alla vista o alla store degli input fissi quindi devo collegarla
alla maschera.
Volevo chiederti un'altra cosa. Nella vista orgine record della famosa
subform DettaglioOfferte, ho sulle proprietà maschera Su evento "Dopo
conferma cancellazione" una routine di questo tipo:
Me.Parent![DettaglioVisivoOfferta].Requery
Non comprendo come mai avvolte funziona avvolte no, più spesso non funziona
e non ne capisco il motivo. La vista è sempre la stessa quindi a rigor di
logica se mi si aggiorna da una parte dovrebbe farlo anche su ques'altra
maschera no?
Ho provato a mettere anche RunCommand acCmdSaveRecord ma nulla da fare. Sto
sbagliando qualcosa?
Grazie
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:uXURa.51800$it4.1...@news1.tin.it...
>
> "Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
> news:bf94vo$mt2$1...@lacerta.tiscalinet.it...
> >
> > "ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
> > news:xlTRa.94566$qa5.1...@news2.tin.it...
> > >
> > > "Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel
messaggio
> > > news:bf8e2j$9ca$1...@lacerta.tiscalinet.it...
[STRACUT]
> Ciao Giorgio,
> anche questa volta non posso darti torto.
> Quindi mi devo dimenticare tutte quelle "belle" formulette che tanto
aiutano
> in questi casi...invece adesso devo girare intorno
> alla cosa per fargli fare la stessa operazione. Spesso e volentieri non
> posso dare alla vista o alla store degli input fissi quindi devo
collegarla
> alla maschera.
> Volevo chiederti un'altra cosa. Nella vista orgine record della famosa
> subform DettaglioOfferte, ho sulle proprietà maschera Su evento "Dopo
> conferma cancellazione" una routine di questo tipo:
>
> Me.Parent![DettaglioVisivoOfferta].Requery
>
> Non comprendo come mai avvolte funziona avvolte no, più spesso non
funziona
> e non ne capisco il motivo. La vista è sempre la stessa quindi a rigor di
> logica se mi si aggiorna da una parte dovrebbe farlo anche su ques'altra
> maschera no?
>
> Ho provato a mettere anche RunCommand acCmdSaveRecord ma nulla da fare.
Sto
> sbagliando qualcosa?
>
> Grazie
>
> Ultra
>
Ciao Luigi
Forse è una questione di ritardo, prova a inserire un Doevents per dare
spazio agli altri processi
----------------
Doevents
Me.Parent![DettaglioVisivoOfferta].Requery
---------------
Oppure più mirato al subform
----------------
Doevents
Me.Parent![DettaglioVisivoOfferta].Form.Requery
---------------
Per quanto riguarda le comodità del buon vecchio Jet posso dirti che ti
mancano perché stai cercando di utilizzare SqlServer come se fosse Jet. E'
una cosa normalissima e ci siamo passati tutti. Con l'incremento delle
conoscenze sul nuovo strumento, ti accorgerai che potrai girare il 90% del
codice che attualmente scrivi in Vba direttamente sul Server, sfruttando la
sua  robustezza in ambiente multiutente. Quindi utilizzerai Access
prevalentemente come interfaccia grafica e per le sue stupende proprietà (I
SubForm e i SubReport di Access sono una cosa unica).
Ciao Giorgio


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bf9d4j$rsk$1...@lacerta.tiscalinet.it...

Ciao Giorgio,
Scusa per il ritardo nella mia risposta, comunque ho provato con il Doevents
ma nulla da fare....non capisco appena lo metto funziona poi appena chiudo e
salvo non funziona più, devo per forza di cose chiudere la finestra per
vedere i risultati della query giusti.
E' una cosa molto strana ma non riesco a cancellare qualcosa e vedere
immediatamente l'altra finestra aggiornata.
Non credo che sia ritardi di rete visto che sono solo io per il momento
l'unico utente.......
Grazie ancora
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:S4SSa.6487$t92.1...@news1.tin.it...
>
> Ciao Giorgio,
> Scusa per il ritardo nella mia risposta, comunque ho provato con il
Doevents
> ma nulla da fare....non capisco appena lo metto funziona poi appena chiudo
e
> salvo non funziona più, devo per forza di cose chiudere la finestra per
> vedere i risultati della query giusti.
> E' una cosa molto strana ma non riesco a cancellare qualcosa e vedere
> immediatamente l'altra finestra aggiornata.
> Non credo che sia ritardi di rete visto che sono solo io per il momento
> l'unico utente.......
>
> Grazie ancora
>
> Ultra
>
Ciao Ultra
Ho provato a simulare la tua situazione e effettivamente non si ottiene il
risultato sperato.
La sequenza degli eventi durante una cancellazione è : BeforeDelConfirm;
AfterDelConfirm; Delete.
Nell'ultimo evento Delete è ancora possibile via codice annullare la
cancellazione con Cancel=true quindi di fatto il record non è ancora
cancellato e il requery comprende anche il record che si vuole cancellare.
Se vuoi puoi risolvere in questo modo
1) Crei una variabile booleana, esempio
Dim Cancellato As Boolean
a livello di form , per intenderci subito sotto Option explicit
2)Nell'evento AfterDelConfirm setti la variabile a true se è stata data
conferma alla cancellazione, esempio
Private Sub Form_AfterDelConfirm(Status As Integer)
    Cancellato = (Status = acDeleteOK)
End Sub
2)Nell'evento Current esegui la requery del secondo subform solo se è stato
cancellato un record, esempio
Private Sub Form_Current()
    If Cancellato Then 'Se è stato cancellato il record
       Me.Parent![DettaglioVisivoOfferta].Requery
    End If
   Cancellato = False 'Resetto il flag
End Sub
Ciao Giorgio


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bfh1bk$r80$1...@lacerta.tiscalinet.it...

Ciao Giorgio,
Funziona tutto adesso. Infatti il problema era proprio quello :)
Ora almeno quella cosa è risolta. Solo che devo cambiare ancora tante cose.
Volevo chiederti, ho visto tra strumenti la possibilità di fate un Backup.
Questo file è salvato in un .DAT
Come si utilizza il .DAT? Voglio dire, metti che mi servisse il file di
backup un giorno, come posso utilizzarlo?
Grazie
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:8sUSa.7166$t92.2...@news1.tin.it...
>
> "Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
> news:bfh1bk$r80$1...@lacerta.tiscalinet.it...
> >
> > "ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
> > news:S4SSa.6487$t92.1...@news1.tin.it...
> > >
>
> Ciao Giorgio,
> Funziona tutto adesso. Infatti il problema era proprio quello :)
> Ora almeno quella cosa è risolta. Solo che devo cambiare ancora tante
cose.
> Volevo chiederti, ho visto tra strumenti la possibilità di fate un Backup.
> Questo file è salvato in un .DAT
> Come si utilizza il .DAT? Voglio dire, metti che mi servisse il file di
> backup un giorno, come posso utilizzarlo?
> Grazie
>
> Ultra
>
Ciao Ultra
Dal menu strumenti oltre alla voce backup database Sql c'è anche ripristina
database Sql, come spiegato nel manuale copiano il file (o meglio i files)
del database, il progetto ADP non viene interessato in questo processo.
Se invece desideri eseguire il restore di un backup precedente su un'altro
database per estrarre solo determinate tabelle, allora la cosa si complica,
adesso è un po tardi per spiegarla ma qualora ti servisse puoi chiedere
aiuto su questo ng o su microsoft.public.it.sql
Ciao Giorgio.


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bfhshq$ai4$1...@lacerta.tiscalinet.it...

Ciao Giorgio,
proverò ad utilizzarlo, ti volevo chiedere dove posso scaricare il manuale
di SQL visto che mi sono solo scaricato la guida in linea.
Grazie ancora
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:6Y4Ta.11932$SN1.4...@news2.tin.it...

Ciao Ultra
Che io sappia la guida in linea o manuale è a questo indirizzo, indirizzo
che ti ha postato Onedp in data 11/07/03
http://www.microsoft.com/italy/sql/techinfo/productdoc/2000/books.asp
Ciao Giorgio
>


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bfiuod$k9k$1...@lacerta.tiscalinet.it...

Ciao Giorgio,
Senti una cosa, usando l'MSDE sono costretto a lavorare (programmarlo)
direttamente dal pc dove è installato il server oppure esiste una
possibilità remota che io possa lavorare da un altro pc non collegato in
rete e salvare i dati poi sul server?
Mi spiego meglio magari facendo un backup potrei utilizzarlo per installarlo
in un altro pc fare le mie dovute modifiche poi ricreare un altro backup e
riportarlo nel server definitivo credi che tutto questo sia possibile??
Grazie
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:MKcUa.23732$Za4.5...@news2.tin.it...

Si puoi farlo ma ovviamente il backup ricopre interamente il db di
destinazione.
Oltre al backup puoi copiare direttamente i file NomeDb.mdf e Nomedb.ldf
(devono essere copiati assieme)  tra un computer e l'altro, ovviamente il
servizio Sqlserver deve essere fermo.
Ciao Giorgio


title: Access MSDE

text:
> > "ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
> >
> > Ciao Giorgio,
> > Senti una cosa, usando l'MSDE sono costretto a lavorare (programmarlo)
> > direttamente dal pc dove è installato il server oppure esiste una
> > possibilità remota che io possa lavorare da un altro pc non collegato in
> > rete e salvare i dati poi sul server?
> > Mi spiego meglio magari facendo un backup potrei utilizzarlo per
> installarlo
> > in un altro pc fare le mie dovute modifiche poi ricreare un altro backup
e
> > riportarlo nel server definitivo credi che tutto questo sia possibile??
> >
> > Grazie
> >
> > Ultra
> >
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bfrlud$rvt$1...@lacerta.tiscalinet.it...
> Si puoi farlo ma ovviamente il backup ricopre interamente il db di
> destinazione.
> Oltre al backup puoi copiare direttamente i file NomeDb.mdf e Nomedb.ldf
> (devono essere copiati assieme)  tra un computer e l'altro, ovviamente il
> servizio Sqlserver deve essere fermo.
>
> Ciao Giorgio
>
Ciao Giorgio, io ci ho provato a fare il backup e a portarlo a casa nel mio
laptop solo che quando il tutto è stato salvato (senza intoppi) ed ho aperto
il programma, mi sono accorto che in una vista (quella benedetta che
conteneva il CASE WHEN..........) il valore che mi restituiva era:
.00000000
anche se il campo è vuoto il valore predefinito è quello...cosa che non mi
va bene essendo un campo Decimal. Può essere stato causato dal ripristino
del backup oppure può essere causato dal fatto che a casa ho office xp e in
ufficio office 2000 professional? Ti specifico che il .ADP è stato creato
con 2000.
Grazie ancora
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:oK6Va.22933$Df5.6...@news1.tin.it...

ah ah !!
Ora capisco perchè non mi hai fatto prima questa domanda.
Anche io ho AccessXp, e quando inserisco in un form o in un report un
controllo che ha come Origine Controllo un campo calcolato e il campo
calcolato eccede dalla precisione 28,x  AccessXp non lo interpreta
correttamente e lo visualizza come una stringa.
Comunque basta che alla voce origine controllo metti =Val([PrezzoTotale]) e
il tutto va a posto.
Evidentemente è un Bug implementato con la versione Xp.
Ciao Giorgio


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bg34qm$ofn$1...@lacerta.tiscalinet.it...

Ciao Giorgio,
infatti ora tutto è apposto :) Si evidentemente è un bug solo su office xp e
non sull'altro. Infatti anche io non capivo la prima volta quello che
intendevi con queste precisioni.....28,x etc..... ORA l'ho capita! :)
Volevo chiederti un'altra cosa. Quello che mi hai spiegato è che MSDE come
pure l'SQL ha bisogno di tabelle al cui interno ci sia almento una chiave
primaria. (funziona anche con un index basta che sia unique) e così ho
fatto. Solo che ora mi trovo un dilemma da risolvere. I numeri fatture,
oppure ordini o fatture hanno bisogno di un campo unique (i numeri non
possono ripetersi giusto?) Solo che all'apertura dell'anno successivo, i
numeri per legge ricominciano da 1.......e se sono unique.......questo non
me li accetta! Che accidenti si può fare? ti è mai capitata questa cosa?
Come l'hai risolta?
Ho visto quello che anche io usavo (0001/02) ma al cliente non piace molto.
Anche perchè devi dire tu di quanti numeri possono essere le
fatture........ossia 0001 arriva fino a 9999 fatture....e se poi metti caso
in un anno questo mi arriva a 10000?
Grazie ancora
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:%4pVa.26343$Df5.8...@news1.tin.it...

Ciao Ultraflex
La soluzione è semplice,devi usare un indice composto da due campi.
Esempio di tabella Bolle
Id_bolla    INT,  contatore PRIMARY KEY
Numero    INT,  NO NULL, DEFAULT 0
Data         Datetime, NO NULL
Anno        INT, NO NULL, DEFAULT 0
Come chiave primaria si utilizza un contatore autogestito dal computer che
ci server per le relazioni con il corpo bolla.
Poi si crea un secondo indice univoco composto dai campi Anno e Numero, in
questo modo un numero bolla è univoco solo nell'anno in corso.
Naturalmente bisogna assegnare il valore al campo Anno ovvero YEAR([Data]),
questa operazione potresti farla da codice nell'evento Before_Update del
form Bolle, ma se vuoi un consiglio fallo fare a SqlServer tramite un
trigger.
Esempio di trigger per compilare automaticamente il campo Anno
------------------------------------------
CREATE TRIGGER Bolle_Trigger1
ON dbo.Bolle
FOR INSERT, UPDATE
AS
-- Eseguo l'update solo se è stato toccato il campo DataDoc
IF UPDATE (Data) BEGIN
    UPDATE Bolle SET Anno=Year(I.Data)
    FROM Bolle B INNER JOIN INSERTED I
    ON B.Id_Bolla=I.Id_Bolla
END
----------------------------------------
Come dicevo per quanto riguarda la relazione con la tabella dettaglio_bolla
devi utilizzare il campo Id_Bolla che essendo contatore si incrementa
automaticamente.
Se vuoi un consiglio prevedi anche un campo tipo_bolla CHAR(1)  da inserire
nell'indice, ti da la possibilità di avere bolle 1/A o 1/B (e prima o poi te
lo chiederanno)
Ciao Giorgio.


title: Access MSDE

text:

Ciao Giorgio,
ho subito provato a fare quello che mi hai detto....e tutto va bene solo che
il campo DataOfferta (che tu hai chiamato DATA) quando ho messo come valore
predefinito YEAR([DataOfferta]) il pc quando cambio anno ad esempio 2004 lui
scrive 1905.....come mai? Forse per il discorso che l'SQL usa la data
americana o per il fatto che è meglio usare il trigger per questo motivo?
stranissimo perchè usando altri valori me li riporta tutti giusti.
Un'altra cosa che mi chiedono... di collegare un registratore di cassa con
access (SQL) a questo punto.
Ma non sono riuscito a trovare nulla nel sito comune....possibile che non
sia mai servito a nessuno?
Grazie
Ultra


title: Access MSDE

text:
"ultrareflex" <
lew...@tin.it
> ha scritto nel messaggio
news:WYvVa.28086$Df5.8...@news1.tin.it...

Ciao Ultraflex
Vediamo se ho capito.
Tu hai il controllo ANNO che ha come valore predefinito YEAR([DataOfferta]).
In questo modo il Controllo Anno viene valorizzato solo se sei in
inserimento di una nuova offerta generando un BUG se ti variano la data (con
anno diverso) in fase di variazione record.
Se non vuoi usare un trigger Assegna il valore al campo o al controllo Anno
nell'evento  Form_BeforeUpdate.
Per quanto riguarda l'assegnazione dell'anno con data in formato gg/mm/aa
devi modificare le impostazioni del Pannello di controllo nella sezione
"Impostazioni Internazionali" quindi "scheda data" voce "quando viene
immesso un anno a due cifre consideralo compreso tra" .....
Per la comunicazione tra Access e il registratore di cassa puoi prendere
spunto da questa Kb della Microsoft.
Esempio di uso delle API per la comunicazione seriale
http://support.microsoft.com/default.aspx?scid=kb;it;639415
L'ho usata anche io per i registratori di cassa, ovviamente devi avere le
informazioni sul protocollo di comunicazione che ti fornirà la casa
costruttrice del registratore.
Ciao Giorgio


title: Access MSDE

text:
"Giorgio Prx" <
giorgio...@nospamtiscali.it
> ha scritto nel messaggio
news:bg65b5$a42$1...@lacerta.tiscalinet.it...

Ciao Giorgio,
Grazie per le informazioni sul registratore di cassa, ne farò buon uso :)
Riguardo l'indice per la numerazione delle offerte / ordini / bolle, io ho
inserito il doppio indice anche su DettaglioOfferte, solo che non me lo
accetta........mi dice che non mi è permesso duplicare il valore
dell'indice...... forse il campo Data non viene automaticamente inserito,
quindi lui si trova solamente il numero duplicato non credi?
Un'altra cosa, ho trasportato l'SQL a casa per lavorarci con più comodità, e
ti ho detto di quel bug per quanto riguarda i campi calcolati, e fin quì
tutto ok, solo che adesso ho creato una store in ufficio collegata ad una
routine,
la store è questa:
Alter PROCEDURE usp_DettaglioOfferta
(@IDOfferte int)
AS SELECT * FROM DettaglioOfferta
WHERE (IDOfferte = IDOfferte)
Order By Riga
e la routine questa:
Dim strFiltro As String
strFiltro = "IDOfferte = " & Me.IDOfferte
Me.Riga.Value = IIf(IsNull(DMax("Riga", "DettaglioOfferta", strFiltro) + 3),
3, DMax("Riga", "DettaglioOfferta", strFiltro) + 3)
End Sub
Allora, in ufficio funziona con il 2000 a casa con l'xp no. Mi dice Syntax
error on line 1 near ')'
Ho controllato le parentesi, la punteggiatura, qualsiasi cosa, ma non c'è
niente da fare non funziona.
La stessa identica cosa a casa non funziona....sai di qualche bug nell'xp?
Grazie
Ultra


title: Un errore non bloccante...

author: Ronny

text:
Ciao a tutti,
nel mandare in esecuzione un report mi esce questo messaggio informativo a
cui devo rispondere Ok :
"Comando o azione seleziona record non disponibile"
Eppure il report funziona.
Come posso eliminarlo?
Grazie mille a tutti
Ronny.
--------------------------------
Inviato via
http://usenet.libero.it


title: Un errore non bloccante...

author: RoDAgo

text:
"Ronny" scrisse ....
> Ciao a tutti,
> nel mandare in esecuzione un report mi esce questo messaggio informativo a
> cui devo rispondere Ok :
> "Comando o azione seleziona record non disponibile"
> Eppure il report funziona.
> Come posso eliminarlo?
Posta il codice che c'è nel report.
Se non hai messo nulla imposta la proprietà Possiede Modulo a No.
RoDAgo



title: Un errore non bloccante...

author: FABIO

text:
Ronny wrote:


Può essere qualke macro o evento presente nelle proprietà 'Su apertura'o
'Su corrente', prova a vedere se c'è qualcosa lì (magari un carattere
digitato per errore) ed eliminalo
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: Un errore non bloccante...

text:
Risolto, grazie a tutti.
C'era un msgbox sull'evento On Error dell' Open Report, probabilmente creato
con l'autocomposizione.
Io ho visto che il Report non ha problemi quindi ho tolto il MsgBox ...
vedremo!
Grazie.



title: Data Entry di questionari

author: Spirit

text:
Ciao,
Devo creare dei questionari scaricabili da internet e poi inserirli
dentro un db in Access, esiste qualche modo per semplificare
notevolmente l'immissione dei dati?
Anche scannerizzandole schede o altro?
Spirit


title: Data Entry di questionari

text:
"Spirit" <
light...@gmail.com
> ha scritto nel messaggio
news:1174294233....@e1g2000hsg.googlegroups.com...

Non fai prima a crearti delle pagine web, con le domande del questionario,
che scrivono i risultati direttamente nel tuo database?
Ciao.
--
Sergio MAZZA


title: Data Entry di questionari

text:
On 20 Mar, 13:48, "Sergio MAZZA" <
sergioma...@tiscali.it
> wrote:
> "Spirit" <
lightspi...@gmail.com
> ha scritto nel messaggionews:1174294233....@e1g2000hsg.googlegroups.com...
> > Ciao,
> > Devo creare dei questionari scaricabili da internet e poi inserirli
> > dentro un db in Access, esiste qualche modo per semplificare
> > notevolmente l'immissione dei dati?
> > Anche scannerizzandole schede o altro?
>
> > Spirit
>
> Non fai prima a crearti delle pagine web, con le domande del questionario,
> che scrivono i risultati direttamente nel tuo database?
>
> Ciao.
>
> --
> Sergio MAZZA
Magari!! Ci son diversi problemi:
1- Non possiamo avere/tenere/mantenere/gestire un server
2 - Non mi lascierebbero cmq creare un sito
...quindi se riesco a trovare qualcosa di fattibile, ma
l'accetterebbero e smetterebbero di farmi fare db e relativo data
entry delle schede cartacee :-|
Conoscete qualche sistema veloce per immettere dati su un db che nn
sia tramite una 20ina di maschere?


title: Data Entry di questionari

text:
"Spirit" <
light...@gmail.com
> ha scritto nel messaggio
news:1174553542.1...@o5g2000hsb.googlegroups.com...
>
> Magari!! Ci son diversi problemi:
> 1- Non possiamo avere/tenere/mantenere/gestire un server
> 2 - Non mi lascierebbero cmq creare un sito
1 - il costo minimo di un servizio web è 50 euro l'anno;
2 - per quello che devi fare tu non serve molto
> ...quindi se riesco a trovare qualcosa di fattibile, ma
> l'accetterebbero e smetterebbero di farmi fare db e relativo data
> entry delle schede cartacee :-|
>
> Conoscete qualche sistema veloce per immettere dati su un db che nn
> sia tramite una 20ina di maschere?
Dipende dai tuoi questionari...
Ciao.
--
Sergio MAZZA


title: Data Entry di questionari

text:
> Dipende dai tuoi questionari...
>
> Ciao.
> --
> Sergio MAZZA
???
Son da 7 a 9 pagine, con caselle si/no e qualche campo testo per
pagina.
Grossomodo la tablella su database della scheda son sui 360 campi (in
access servono 2 tabelle).


title: Data Entry di questionari

text:
"Spirit" <
light...@gmail.com
> ha scritto nel messaggio
news:1174641299.8...@d57g2000hsg.googlegroups.com...
>
> ???
>
> Son da 7 a 9 pagine, con caselle si/no e qualche campo testo per
> pagina.
> Grossomodo la tablella su database della scheda son sui 360 campi (in
> access servono 2 tabelle).
360 campi?!?
Scusa ma la struttura della tabella non č:
- domanda,
- risposta, default Null, stato triplo: Null, 0(false/No), -1(true/Sě)
Forse intendevi 360 domande...
Ciao.
--
Sergio MAZZA


title: Data Entry di questionari

author: Alessandro Cara

text:

360 campi?
Io uso 4 tabelle
1) descrizione del questionario. Una decina di campi. Deve gestire anche
le domande aperte e piu' di 2 risposte
2) Aggregazioni. Campi 5. Serve per raggruppare logicamente le singole
domande
3) Testata Questionario. 15 campi
4) Risposte. 6 campi
Questa struttura e' in grado di gestire qualsiasi tipo di questionario
come da te descritto per un numero illimitato di domande. Quest'ultima
affermazione e' teorica poiche' il form di acquisizione che uso limita
il tutto a 50 o 100 domande per tipo questionario
La acquisizione avviene con una maschera base e quattro altre forms di
supporto che servono specificataemente per la gestione dei commenti che,
nel mio caso, sono a loro volta dei "piccoli" questionari.
La maschera base ha "predisegnati" 100*5 checkbox e si autovisualizzano
solo quelli previsti in "descrizione questionario"
--
ac
y-1=x


title: Data Entry di questionari

text:

temo intendesse 360 campi!
--
ac
y-1=x


title: Data Entry di questionari

text:
On 23 Mar, 11:01, Alessandro Cara <
alessandro.c...@ay-1asistemi.it
>
wrote:
> Sergio MAZZA wrote:
> > "Spirit" <
lightspi...@gmail.com
> ha scritto nel messaggio
> >news:1174641299.8...@d57g2000hsg.googlegroups.com...
> >> ???
>
> >> Son da 7 a 9 pagine, con caselle si/no e qualche campo testo per
> >> pagina.
> >> Grossomodo la tablella su database della scheda son sui 360 campi (in
> >> access servono 2 tabelle).
>
> > 360 campi?!?
> > Scusa ma la struttura della tabella non è:
> > - domanda,
> > - risposta, default Null, stato triplo: Null, 0(false/No), -1(true/Sì)
>
> > Forse intendevi 360 domande...
>
> > Ciao.
>
> temo intendesse 360 campi!
>
> --
> ac
> y-1=x
Io indento 360 Colonne (che mi stanno in 2 tabelle, xchè una ci
possono stare solo 255 campi).
Il mio problema è che per fare il data entry ci vuole da 20 min ad 1
ora per la sola compilazione, se uno deve compilarne una centinaio o +
si spara.
Esiste/conoscete qualche tecnica per far prima o per nn far suicidare
tutte le persone che fanno data entry?
Magari potendo scannerizzare la pagina e in automatico inserisce in db
o nn saprei neanche io...


title: Data Entry di questionari

text:
"Spirit" <
light...@gmail.com
> ha scritto nel messaggio news:1174734583....@e65g2000hsc.googlegroups.com...
Io indento 360 Colonne (che mi stanno in 2 tabelle, xchè una ci
possono stare solo 255 campi).
Il mio problema è che per fare il data entry ci vuole da 20 min ad 1
ora per la sola compilazione, se uno deve compilarne una centinaio o +
si spara.
Esiste/conoscete qualche tecnica per far prima o per nn far suicidare
tutte le persone che fanno data entry?
Magari potendo scannerizzare la pagina e in automatico inserisce in db
o nn saprei neanche io...
[risposta]
Chi fa quel lavoro lo fa senza spararsi (io l'ho fatto per 10 anni), altrimenti che fa? Il programmatore di access(!)?
Si tratta solo di studiare bene le maschere che devono permettere (se possibile) di inserire i dati in modo veloce (es. senza
battere invio per la conferma per ogni valore).
Se i questionari sono cartacei e sono con una grafica non omogenea, come fai a ipotizzare una scansione del supporto? Devi mettere
in conto anche la disposizione del foglio sullo scanner (una volta dritto, una volta storto, ect.etc.), la velocità di scansione
dello strumento, la velocità di restituzione dell'immagine all'applicazione che poi, con altro tipo di velocità, dovrebbe eseguire
un riconoscimento dei segni o caratteri sul foglio. E come fai a distinguere segni strani vicino alle risposte?
Caselle sì/no? E che ci vuole a premere (es.) la barra spaziatrice sulla checkbox e passare alla prossima domanda?
Mi vuoi dire che battere 360 volte (circa) un tasto (al 90% sempre lo stesso) è un problema per chi fa data-entry?
La tecnica per non far suicidare la gente (ma non esageriamo!) è quella di far inserire i valori direttamente a chi deve
rispondere...
Ciao.
--
Sergio MAZZA


title: Colore evidenziazione casella controllo

author: Mercurio

text:
Ciao,
vorrei sapere se è per caso possibile variare il colore dell'evidenziazione
di un campo in una casella di controllo:
nel senso io ho sfondo  "verde" nella casella con testo dei campi in giallo
e vorrei, quando viene selezionata una voce, l'evidenziazione fosse ,ad
esempio, blu, ma esce predefinita violetto.Mi sembra che siano già
predefinite !!
Grazie


title: Colore evidenziazione casella controllo

author: oizirbaF

text:


Se hai xp c'è la formattazione condizionale ( guarda sulla guida in
linea ) , se no cerca sul sito comune mi pare che nella sezione forms
ci sia qlc sulla formattazione delle caselle in maschere continue ( ma
potrebbe fare al tuo caso cmq )
Ciao. Fabrizio.
(Access XP (sp2), Win ME, P4 1Ghz, 320 RAM)


title: Esportare Tabella ---> *.txt

author: Carmelo

text:
Ciao Ragazzi,
sapete dirmi se č possibile questa conversione o esportazione?
Mi serve lavorare su un file txt con i dati di una tabella,
Posso? Possiedo Access XP.
Grazie.


title: Esportare Tabella ---> *.txt

text:


Docmd.TrasferText vedi nell'help


title: Esportare Tabella ---> *.txt

text:
On Mon, 27 Oct 2003 18:35:10 GMT, "Carmelo"
<
accessNOSPA...@tin.it
> wrote:

Una funzione di un mio vecchio database, adattala al tuo:
-----------
Function ExportData()
On Error GoTo Errore
    Dim NomeFile As String
    Dim ID As String
    Dim Path As String
    Dim Ext As String
    Dim Salva
    Dim NomeTabella As String

    Ext = ".txt"
    Path = "C:\fermate\"
    NomeFile = Path & "Fermate" & Ext
    NomeTabella = "Fermate"

    Me.Refresh

    Salva = MsgBox("Esportare il risultato nel file " & NomeFile &
"?", vbApplicationModal + vbYesNo + vbQuestion)

    If Salva = vbNo Then
        MsgBox "Esportazione annullata dall'utente.",
vbApplicationModal + vbOKOnly + vbInformation
        Exit Sub
    Else
        If Dir(Path) <> "" Then
        'esporta
            GoTo Esporta
        Else
        'crea ed esporta
            MkDir "c:\fermate"
            GoTo Esporta
        End If
    End If

Esporta:
    'Nomefile = Path & "Fermata" & Ext
    DoCmd.TransferText acExportDelim, , NomeTabella, NomeFile, True
    MsgBox "Esportazione della tabella completata.",
vbApplicationModal + vbInformation + vbOKOnly
    Exit Sub

Errore:
If Err.Number <> 0 Then
    MsgBox "Errore: " & Err.Description
End If
Exit Sub
End Function


title: Esportare Tabella ---> *.txt

text:
"Carmelo" <
accessNOSPA...@tin.it
> ha scritto nel messaggio
news:yzdnb.362694$R32.11...@news2.tin.it...

File - salva con nome/esporta...
Ciao.
--
Sergio MAZZA


title: Form: sequenza di eventi non lineare

author: Stolcius Von Stolcenberg

text:
Buongiorno a tutti,
mi scuso in anticipo per la domanda niubbo-like.

Ho notato che se  nell'evento  Form_Open viene valorizzato il
Recordsource della form, non appena il programma esegue detta linea di
codice, l'esecuzione salta all'evento  Form_Load(), poi a
Form_Current() e, a chiusura di quest'ultimo, salta nuovamente a
Form_Open per eseguire le linee di codice successìve a
Me.RecordSource.

****ESEMPIO*******
Private Sub Form_Current()
  Debug.Print "Form_Current "
End Sub

Private Sub Form_Load()
    Debug.Print "Form_Load "
End Sub

Private Sub Form_Open(Cancel As Integer)
   Debug.Print "Form_Open(1) "
   Me.RecordSource = "Select * from tabella1"
   Debug.Print "Form_Open(2) "
End Sub

****OUTPUT*******
Form_Open(1)
Form_Load
Form_Current
Form_Open(2)
---

Ora, la cosa mi è nota da parecchio tempo, ma mi ha sempre lasciato un
po' perplesso, in quanto, almeno stando ai testi  che ho letto,
l'esecuzione FORM_OPEN => FORM_LOAD viene sempre descritta come
lineare...

Esempio:
"The Open event occurs before the Load event, which is triggered when
a form is opened and its records are displayed."
(Fonte:
http://tinyurl.com/cmsn7xk
)

Dovrei vergognarmi(tenendo conto che programmo dalla remota epoca del
VIC 20? :-((((

Tia per le risposte,
Stolcius


title: drag and drop

author: gino pilotino

text:
come si può utilizzare la funzionalità drag and drop fra due treeview.
mi spiego meglio:
ho realizzato un db che gestisce le distinte basi della mia azzienda vorrei
modificare la maschera che ne gestisce la visualizzazione con due treeview
che si possano gestire le aggiunte da una all'altra con il metodo drag and
drop
ringrazio fin d'ora
saluti a tutti Marco


title: CASELLA COMBINATA - Ordine Alfabetico

author: Henry Found

text:
Desidero conoscere come rendere possibile la visualizzazione dei dati in una
casella combinata (collegata ad una tabella) in ordine alfabetico (secondo
il campo "cognome") in luogo che seguendo l'ordine cronologico di
inserimento (ID)
Grazie
Enrico


title: CASELLA COMBINATA - Ordine Alfabetico

author: ciroteo

text:
"Henry Found" <
elsat.el...@tin.it
> ha scritto nel messaggio
news:jD4dd.57809$b5.29...@news3.tin.it...

se come origine dati della combo ci metti una stringa sql puoi ordinare i
dati secondo i campi che vuoi.
agisci poi sulla larghezza delle colonne e sul loro numero.
pe. es.
in una casella idcliente (che memorizza il valore id numerico)
metti come origine
idcliente,cognome,nome
poi dalla griglia della query metti crescente per cognome e poi per nome.
salvi questa origine dati e nella finestra della proprietą metti :
larghezza colonne 0;4cm;4cm
numero colonne 3 ,
colonna associata 1
aprendo poi la combo vedrai cognome e nome ordinati ma verrą salvato il
valore del campo id ...


title: CASELLA COMBINATA - Ordine Alfabetico

author: Tech Manager - ELSAT ELETTRONICA SPA

text:
"ciroteo" <
ciroteo_c...@libero.it
> ha scritto nel messaggio
news:cl2np5$cvs$1...@hulme.interac.it...
>
> "Henry Found" <
elsat.el...@tin.it
> ha scritto nel messaggio
> news:jD4dd.57809$b5.29...@news3.tin.it...
> > Desidero conoscere come rendere possibile la visualizzazione dei dati in
> > una
> > casella combinata (collegata ad una tabella) in ordine alfabetico
(secondo
> > il campo "cognome") in luogo che seguendo l'ordine cronologico di
> > inserimento (ID)
> > Grazie
> > Enrico
> >
> >
> se come origine dati della combo ci metti una stringa sql puoi ordinare i
> dati secondo i campi che vuoi.
> agisci poi sulla larghezza delle colonne e sul loro numero.
> pe. es.
> in una casella idcliente (che memorizza il valore id numerico)
> metti come origine
> idcliente,cognome,nome
> poi dalla griglia della query metti crescente per cognome e poi per nome.
> salvi questa origine dati e nella finestra della proprietà metti :
> larghezza colonne 0;4cm;4cm
> numero colonne 3 ,
> colonna associata 1
> aprendo poi la combo vedrai cognome e nome ordinati ma verrà salvato il
> valore del campo id ...
>
>
Grazie - Risposta veramente completa.
Enrico


title: CASELLA COMBINATA - Ordine Alfabetico

text:
"Tech Manager - ELSAT ELETTRONICA SPA" <
elsat.el...@tin.it
> ha scritto
nel messaggio news:1fcdd.60312$b5.29...@news3.tin.it...
>
> "ciroteo" <
ciroteo_c...@libero.it
> ha scritto nel messaggio
> news:cl2np5$cvs$1...@hulme.interac.it...
>>
>> "Henry Found" <
elsat.el...@tin.it
> ha scritto nel messaggio
>> news:jD4dd.57809$b5.29...@news3.tin.it...
>> > Desidero conoscere come rendere possibile la visualizzazione dei dati
>> > in
>> > una
>> > casella combinata (collegata ad una tabella) in ordine alfabetico
> (secondo
>> > il campo "cognome") in luogo che seguendo l'ordine cronologico di
>> > inserimento (ID)
>> > Grazie
>> > Enrico
>> >
>> >
>> se come origine dati della combo ci metti una stringa sql puoi ordinare i
>> dati secondo i campi che vuoi.
>> agisci poi sulla larghezza delle colonne e sul loro numero.
>> pe. es.
>> in una casella idcliente (che memorizza il valore id numerico)
>> metti come origine
>> idcliente,cognome,nome
>> poi dalla griglia della query metti crescente per cognome e poi per nome.
>> salvi questa origine dati e nella finestra della proprietą metti :
>> larghezza colonne 0;4cm;4cm
>> numero colonne 3 ,
>> colonna associata 1
>> aprendo poi la combo vedrai cognome e nome ordinati ma verrą salvato il
>> valore del campo id ...
>>
>>
>
> Grazie - Risposta veramente completa.
> Enrico
>
>
prego ... a volte dubito della mia chiarezza!


title: Somma in una maschera...

author: Cecio

text:
Scusate ma proprio non riesco a far funzionare 'sta cosa...
Access 2007 - Maschera continua con 3 colonne con numeri (a,b,c)
Voglio inserire manualmente a e b poi posizionandomi su c (o con il mouse o
con il tab) vorrei che comparisse in automatico il valore a+b che volendo
posso poi cambiare manualmente.
ho provato ad impostare su [c]/dati/su attivato
=[a]+[b]
...non funziona...
Se mi posiziono sulla casella non compare nulla...
Sbaglio da qualche parte? credo di si ... ma cosa?
Grazie!!!
Ciao


title: Somma in una maschera...

author: Giorgia

text:
"Cecio" <
marco...@virgilio.it
> ha scritto nel messaggio
news:48bd415b$0$41663$4faf...@reader4.news.tin.it...

>Ciao,
ma a e b sono sempre diversi da 0? Se no devi usare la funzione
c=(Nz([a];0)+nz([b];0))
non so magari il problema era questo....
ciao!
Giorgia


title: Somma in una maschera...

author: CIDI

text:
"Cecio" <
marco...@virgilio.it
> ha scritto nel messaggio
news:48bd415b$0$41663$4faf...@reader4.news.tin.it...

prova cosě: Me.c = Me.a + Me.b
Ciao
Daniele


title: Somma in una maschera...

text:
Ho provato con tutti e due i sistemi ma non funziona...
Ho l'impressione che sia sbagliato il sistema....
io non uso CODICE ma ESPRESSIONI
quindi devo inserire nella tabella proprietà/dati/su attivato
=[a]+[b]
e non
[c]=[a]+[b] altrimenti mi scrive in automatico =[c]=[a]+[b] e si blocca
tutto
non so se ho reso l'idea...
comunque grazie per l'aiuto!
"CIDI" <
dado...@spamtin.it
> ha scritto nel messaggio
news:g9jglg$jt0$1...@aioe.org...

> prova così: Me.c = Me.a + Me.b
>
> Ciao
> Daniele
>
>


title: Somma in una maschera...

author: AleC

text:
On 2 Set, 16:09, "Cecio" <
marco190...@virgilio.it
> wrote:
> Ho provato con tutti e due i sistemi ma non funziona...
> Ho l'impressione che sia sbagliato il sistema....
> io non uso CODICE ma ESPRESSIONI
> quindi devo inserire nella tabella proprietà/dati/su attivato
>
> =[a]+[b]
>
> e non
>
> [c]=[a]+[b] altrimenti mi scrive in automatico =[c]=[a]+[b] e si blocca
> tutto
>
> non so se ho reso l'idea...
>
> comunque grazie per l'aiuto!
>
> "CIDI" <
dadonz...@spamtin.it
> ha scritto nel messaggionews:g9jglg$jt0$1...@aioe.org...
>
>
>
>
>
> > "Cecio" <
marco190...@virgilio.it
> ha scritto nel messaggio
> >news:48bd415b$0$41663$4faf...@reader4.news.tin.it...
> >> Scusate ma proprio non riesco a far funzionare 'sta cosa...
>
> >> Access 2007 - Maschera continua con 3 colonne con numeri (a,b,c)
>
> >> Voglio inserire manualmente a e b poi posizionandomi su c (o con il mouse
> >> o con il tab) vorrei che comparisse in automatico il valore a+b che
> >> volendo posso poi cambiare manualmente.
>
> >> ho provato ad impostare su [c]/dati/su attivato
>
> >> =[a]+[b]
>
> >> ...non funziona...
>
> >> Se mi posiziono sulla casella non compare nulla...
> >> Sbaglio da qualche parte? credo di si ... ma cosa?
>
> >> Grazie!!!
>
> >> Ciao
>
> > prova così: Me.c = Me.a + Me.b
>
> > Ciao
> > Daniele- Nascondi testo citato
>
> - Mostra testo citato -
Premesso che ancora non conosco A2007
Ma sulla scorta del funzionamento di tutti gli Access precedenti non
puoi immettere una espressione nella finestra delle proprietà del
controllo nella riga degli eventi, lì devi mettere una delle opzioni
obbligate (Macro, Routine evento) tu scegli routine evento poi vai (ci
sarà ancora suppongo il pulsantino per andarci in maniera diretta)
nell'IDE del VBA e inserisce nella sub dell'evento il codice che ti
hanno suggerito gli altri.
AleC


title: Somma in una maschera...

text:
Cecio ha scritto:
> Scusate ma proprio non riesco a far funzionare 'sta cosa...
>
> Access 2007 - Maschera continua con 3 colonne con numeri (a,b,c)
>
> Voglio inserire manualmente a e b poi posizionandomi su c (o con il mouse o
> con il tab) vorrei che comparisse in automatico il valore a+b che volendo
> posso poi cambiare manualmente.
>
> ho provato ad impostare su [c]/dati/su attivato
???? sulla "proprieta'" evento attivato? (gotFocus?)
io lo mettere sul controlsource.



title: Somma in una maschera...

author: Roberto da Parma

text:
"Cecio" <
marco...@virgilio.it
> ha scritto nel messaggio
news:48bd4904$0$41652$4faf...@reader4.news.tin.it...

Su corrente della maschera oppure su LostFocus di b metti il codice che ti
hanno già suggerito
Me.c = nz(Me.a) + nz(Me.b)
Eventualmente scegli il colore del carattere in modo da nasconderlo fino a
quando il controllo non acquista il focus ed in questo evento inserirai il
codice per fargli cambiare colore e quindi essere visibile.
Se nella casella metti =[a]+[b] il campo non è aggiornabile.
Ciao
--
Roberto da Parma


title: Somma in una maschera...

text:
Ora funziona...
ho usato il codice e non ho scritto una espressione...
grazie a tutti voi siete stati preziosi TUTTI!!!
Ciao
"AleC" <
alessandr...@novameta.it
> ha scritto nel messaggio
news:cd4412fc-7b69-4d13...@w7g2000hsa.googlegroups.com...



title: Ordini Clienti ---> Ordini Fornitori

text:
Un cordiale saluto a tutto il NG.
Ho il seguente problema da risolvere :
un db strutturato tipicamente con
tabella OrdiniClienti -> tabella DettaglioOrdiniClienti
tabella OrdiniFornitori -> tabella DettaglioOrdiniFornitori
nella tabella DettaglioOrdiniClienti possono anche essere
presenti più prodotti di fornitori DIVERSI, mi spiego meglio :
prodottoA  FornitoreA Qtà=1
prodottoB  FornitoreA Qtà=3
prodottoC  FornitoreB Qtà=5
prodottoD  FornitoreC Qtà=7
prodottoE  FornitoreB Qtà=9
prodottoF  FornitoreC Qtà=7
Dal DettaglioOrdiniClienti vorrei poter creare "automaticamente"
gli ordini ai 3 fornitori diversi, ovvero :
OrdineFornitoreA
con relativi DettaglioOrdiniFornitori per prodottoA e prodottoB
OrdineFornitoreB
con relativi DettaglioOrdiniFornitori per prodottoC e prodottoE
OrdineFornitoreC
con relativi DettaglioOrdiniFornitori per prodottoD e prodottoF
Sicuro della Vs. collaborazione, ringrazio tutti per
gli eventuali suggerimenti!
------------------------------


title: Ordini Clienti ---> Ordini Fornitori

author: Roberto da casa

text:
<
tar...@libero.it
> ha scritto nel messaggio
news:zIAia.5943$mg5.1...@twister2.libero.it...

Creati una query di raggruppamento basata su DettaglioOrdiniClienti
raggruppata per fornitore: trasforma questa query in una query di creazione
o di accodamento per creare la tabella OrdiniFornitori o per aggiungere
record in essa.
Creati una query di raggruppamento basata su DettaglioOrdiniClienti
raggruppata per fornitore e prodotto: trasforma questa query in una query di
creazione o di accodamento per creare la tabella DettaglioOrdiniFornitori o
per aggiungere record in essa.
Questa naturalmente è l'idea di massima, ora lavoraci un po' sopra per
selezionare i record del dettaglio ordini clienti e per adattarla meglio
alla struttura delle tue tabelle relative agli ordini fornitore.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: Ordini Clienti ---> Ordini Fornitori

author: Taraboo

text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:VcBia.5902$nD4.1...@twister1.libero.it...

Grazie x il suggerimento!
A qualcosa del tipo avevo pensato anch'io, ma ...
poi sono arrivato ad un punto morto.
Non so come "ciclare" per poter aggiungere ad ogni "variazione"
del fornitore i relativi dettagli ... Come posso andare avanti?
Finora ho provato così : in una form con relativa subform ho un
pulsante di comando con il seguente codice
Private Sub cmdGenera_Click()
Dim Db As Database
Dim rsComm, rsOrdForn, rsDettComm, rsDettOrdForn As Recordset
Dim strOrdine As String
Dim DepositaOrdine As Long
Set Db = CurrentDb
Set rsComm = Me.RecordsetClone
Set rsOrdForn = Db.OpenRecordset("tblOrdFornitori")
Set rsDettComm = Db.OpenRecordset("tblDettComm")
Set rsDettOrdForn = Db.OpenRecordset("tblDettOrdForn")
strOrdine = "IdOrdine=" & Me!IDOrdine
rsComm.MoveLast
rsComm.FindFirst strOrdine
'------------------------
'INSERT INTO tblOrdFornitori ( IDFornitore )
'SELECT tblProdotti.IDFornitore
'FROM tblProdotti INNER JOIN tblDettComm ON tblProdotti.IDProdotto =
tblDettComm.IDProdotto
'GROUP BY tblProdotti.IDFornitore
'ORDER BY tblProdotti.IDFornitore;
'---------------------------------------
    rsOrdForn.AddNew
    rsOrdForn!DataOrdine = rsComm!DataOrdine
    DepositaOrdine = rsOrdForn!IDOrdine
    rsOrdForn.Update
    rsDettComm.MoveFirst
    Do Until rsDettComm.EOF
        If rsDettComm!IDOrdine = rsComm!IDOrdine Then
            rsDettOrdForn.AddNew
            rsDettOrdForn!IDOrdine = DepositaOrdine
            rsDettOrdForn!Prezzo = rsDettComm!Prezzo
            rsDettOrdForn!Quantità = rsDettComm!Quantità
            rsDettOrdForn.Update
        End If
        rsDettComm.MoveNext
    Loop
rsComm.Close
Set rsComm = Nothing
rsOrdForn.Close
Set rsOrdForn = Nothing
rsDettComm.Close
Set rsDettComm = Nothing
rsDettOrdForn.Close
Set rsDettOrdForn = Nothing
'---------------------------------------------
'INSERT INTO tblDettOrdForn ( IDProdotto )
'SELECT tblDettComm.IDProdotto
'FROM tblProdotti INNER JOIN tblDettComm ON tblProdotti.IDProdotto =
tblDettComm.IDProdotto
'GROUP BY tblProdotti.IDFornitore, tblDettComm.IDProdotto;
'---------------------------------------------
End Sub
Forse sono stato un pò troppo prolisso ....
ma spero di essere stato chiaro.


title: Ordini Clienti ---> Ordini Fornitori

text:
"Taraboo" <
tar...@libero.it
> ha scritto nel messaggio
news:EJ%ia.4274$DT4.1...@twister1.libero.it...
[CUT]
>
> Forse sono stato un pò troppo prolisso ....
> ma spero di essere stato chiaro.
Decisamente troppo prolisso!! ;-)



title: Ordini Clienti ---> Ordini Fornitori

text:
> Decisamente troppo prolisso!! ;-)
>
>
> --
> Roberto
>
> ---------------------------------------------
> il Sito Comune di it.comp.appl.access:
>
http://www.sitocomune.com
> ---------------------------------------------
>
>
Hai ragione ... ma qualche dritta per quei recordset?
Grazie 1k     :(


title: Eliminare record da una tabella

author: michele

text:
Salve
seguendo le istruzioni della guida in linea di Acc03 ho realizzato la
seguente
query di eliminazione con l'intento di annullare tutti i records della
Tabella1
che avevano in comune il campo Bco con la tabella2:
DoCmd.RunSQL "DELETE Tabella1.*, Tabella.Bco" & _
" FROM Tabella1 INNER JOIN Tabella2 ON Tabella1.Bco = Tabella2.Bco" & _
" WHERE ((Not (Tabella2.Bco) Is Null));"
In fase di esecuzione mi compare il messaggio "Impossibile eliminare dalle
tabelle
specificate".
In cosa sbaglio e come eventualmente posso risolvere il problema?
grazie
Michele
--------------------------------
Inviato via
http://arianna.libero.it/usenet/


title: Eliminare record da una tabella

author: Karl Donaubauer

text:
michele wrote:
> seguendo le istruzioni della guida in linea di Acc03 ho realizzato la
> seguente
> query di eliminazione con l'intento di annullare tutti i records della
> Tabella1 che avevano in comune il campo Bco con la tabella2:
>
> DoCmd.RunSQL "DELETE Tabella1.*, Tabella.Bco" & _
> " FROM Tabella1 INNER JOIN Tabella2 ON Tabella1.Bco = Tabella2.Bco" &
> _ " WHERE ((Not (Tabella2.Bco) Is Null));"
>
> In fase di esecuzione mi compare il messaggio "Impossibile eliminare
> dalle tabelle specificate".
>
> In cosa sbaglio e come eventualmente posso risolvere il problema?
Prova con cancellare la seconda tabella dalla clausola DELETE.
Siccome si tratta di un INNER JOIN non dovrebb'essere necessario
il tuo WHERE, cio�:
DoCmd.RunSQL "DELETE Tabella1.*" & _
 " FROM Tabella1 INNER JOIN Tabella2 ON Tabella1.Bco = Tabella2.Bco"
Se ancora non funziona puoi provare:
DoCmd.RunSQL "DELETE DISTINCTROW Tabella1.*" & _
 " FROM Tabella1 INNER JOIN Tabella2 ON Tabella1.Bco = Tabella2.Bco"
--
HTH
Karl
*********
Access FAQ:
www.donkarl.com/it


title: Eliminare record da una tabella

author: Bruno Campanini

text:
"michele" <
mi...@inwind.it
> wrote in message
news:217Z221Z217Z91Y...@usenet.libero.it...
> Salve
>
> seguendo le istruzioni della guida in linea di Acc03 ho realizzato la
> seguente
> query di eliminazione con l'intento di annullare tutti i records della
> Tabella1
> che avevano in comune il campo Bco con la tabella2:
>
> DoCmd.RunSQL "DELETE Tabella1.*, Tabella.Bco" & _
> " FROM Tabella1 INNER JOIN Tabella2 ON Tabella1.Bco = Tabella2.Bco" & _
> " WHERE ((Not (Tabella2.Bco) Is Null));"
>
> In fase di esecuzione mi compare il messaggio "Impossibile eliminare dalle
> tabelle
> specificate".
>
> In cosa sbaglio e come eventualmente posso risolvere il problema?
CurrentDb.Execute "DELETE Tabella1.Bco, Tabella1.* From Tabella1 " & _
"WHERE Tabella1.Bco In (SELECT Tabella2.Bco FROM Tabella2)"
Bruno


title: Confronta tabelle o db

author: MediaCAD newsgroup

text:
Vorrei sapere se c'è la possibilità di confrontare 2 o + tabelle, o 2 o + db
e vorrei inoltre aiuto sulla possibilità di accedere tramite FTP con Access.
Grazie a chiunque mi dia una mano!


title: Confronta tabelle o db

author: Antonio Biso

text:
MediaCAD newsgroup ha scritto nel messaggio
<5bsu4.32908$
qv.3...@news.infostrada.it
>...
>Vorrei sapere se c'è la possibilità di confrontare 2 o + tabelle, o 2 o +
db
>e vorrei inoltre aiuto sulla possibilità di accedere tramite FTP con
Access.
Definizione di confronto tra 2 o + tabelle o tra 2 o + db, please
Antonio


title: Query di eliminazione ed errori di condivisione

text:
Da una tabella collegata via ODCB voglio eliminare dei record.
Allo scopo ho creato una query di eliminazione con gli opportuni criteri, ma
quando la eseguo ricevo il messaggio di errore 'impossibile eliminare 399
record a causa di errori di condivisione'. Cosa vuol dire? Come posso
risolvere?
Ringrazio in anticipo
GioVe


title: Office 2003 SP3 => Combo box vuote!!!!!

text:
Questa è davvero buffa: installando l'SP3 mi trovo delle maschere con delle
combo alimentate da tabelle che sono vuote! Prima dell'installazione di SP3
funzionava tutto bene, subito dopo la stessa maschera mi faceva vedere la
combo vuota. In realtà i dati ci sono ma sembrano scritti bianco su fondo
bianco anche se l'impostazione è differente!!!!!
Qualcuno sa come rimediare: l'SP3 non si può disinstallare e non vorrei
dover rimettere tutto OFFICE!
--------------------------------
Inviato via
http://arianna.libero.it/usenet/


title: Office 2003 SP3 => Combo box vuote!!!!!

text:
P@olo wrote:
> Questa è davvero buffa: installando l'SP3 mi trovo delle maschere con
> delle combo alimentate da tabelle che sono vuote! Prima
> dell'installazione di SP3 funzionava tutto bene, subito dopo la stessa
> maschera mi faceva vedere la combo vuota. In realtà i dati ci sono ma
> sembrano scritti bianco su fondo bianco anche se l'impostazione è
> differente!!!!!
>
> Qualcuno sa come rimediare: l'SP3 non si può disinstallare e non
> vorrei dover rimettere tutto OFFICE!
Installa il Hotfix per l'SP3.
Per il link vedi:
www.donkarl.com/it?FAQ9.1
--
HTH
Karl
*********
Access FAQ:
www.donkarl.com/it


title: Office 2003 SP3 => Combo box vuote!!!!!

text:

Fatto, grazie!



author: Maurino

text:
Ho scaricato dal sito comune la "Funzione per Nascondere o Mostrare la
Finestra di MSAccess" che però mi funziona solo con Access 97.
Io dovrei farla funzionare con Access 2000. Qualcuno sa modificarmi il
codice affinchè questa funzioni oppure indicarmi una altra alternativa.
Grazie in anticipo a chi volesse aiutarmi.
    Maurino


title: Funzione per Nascondere o Mostrare la Finestra di MSAccess

text:
Maurino <
proge...@tin.it
> ha scritto:
> Ho scaricato dal sito comune la "Funzione per Nascondere o Mostrare la
> Finestra di MSAccess" che però mi funziona solo con Access 97.
> Io dovrei farla funzionare con Access 2000. Qualcuno sa modificarmi il
> codice affinchè questa funzioni oppure indicarmi una altra alternativa.
esplicazione del problema:
http://groups.google.com/groups?&selm=a6qanr$g5ksi$1...@ID-46617.news.dfncis.de
codice:
http://groups.google.com/groups?&selm=a5lqik$8fdsg$1...@ID-46617.news.dfncis.de
Forse dovrei mandare questo anche al SC.
--
HTH
Karl
*********
Access-FAQ (tedesco):
http://www.donkarl.com


text:
"Karl Donaubauer" <
ad...@donkarl.com
> ha scritto nel messaggio
news:b1vpc9$17st4j$1...@ID-46617.news.dfncis.de...

Grazie tante Karl !
    Maurino


title: controllo su contatore?!

text:
ciao,
io vorrei disabilitare il controllo nelle maschere dei "pulsanti di
record" ma mi trovo costretto a dover visualizzare a quale record ci si
trova e su quanti; credo di dover inserire un controllo non associato ma
non so come fare...
Grazie
@fly
--------------------------------
Inviato via
http://usenet.iol.it


title: controllo su contatore?!

author: Alessandro Cappelli

text:
"@fly" <
sub...@inwind.it
> ha scritto nel messaggio
news:140Z105Z48Z16Y1...@usenet.iol.it...
> ciao,
> io vorrei disabilitare il controllo nelle maschere dei "pulsanti di
> record" ma mi trovo costretto a dover visualizzare a quale record ci si
> trova e su quanti; credo di dover inserire un controllo non associato ma
> non so come fare...
Controlla le proprietą della maschera. sezione "Formato"


title: controllo su contatore?!

text:
Il 17 Ott 2001, 11:00, "Alessandro Cappelli" <
acap...@iname.com
> ha
scritto:


ok ho controllato ma lģ posso solo disabilitare i pulsanti di
record,io avrei bisogno di un controllo non associato che effettui un somma
dei record presenti,potrei farlo attraverso una query a campi incrociati ma
volevo sapere se esisteva un modo + semplice.
Ciao



title: controllo su contatore?!

text:
@fly <
sub...@inwind.it
> wrote in message
140Z105Z48Z16Y...@usenet.iol.it...
> Il 17 Ott 2001, 11:00, "Alessandro Cappelli" <
acap...@iname.com
> ha
> scritto:
> >"@fly" <
sub...@inwind.it
> ha scritto nel messaggio
> >news:140Z105Z48Z16Y1...@usenet.iol.it...
> >> ciao,
> >> io
> vorrei disabilitare il controllo nelle maschere dei "pulsanti di
> >>
> record" ma mi trovo costretto a dover visualizzare a quale record ci si
> >>
> trova e su quanti; credo di dover inserire un controllo non associato ma
> >> non so come fare...
>
> >Controlla le proprietà della maschera. sezione
> "Formato"
>
> ok ho controllato ma lì posso solo disabilitare i pulsanti di
> record,io avrei bisogno di un controllo non associato che effettui un
somma
> dei record presenti,potrei farlo attraverso una query a campi incrociati
ma
> volevo sapere se esisteva un modo + semplice.
=Dcount("*";"tabella o query")
Antonio


title: controllo su contatore?!

text:
>> ok ho controllato ma lě posso solo disabilitare i pulsanti di
>>
record,io avrei bisogno di un controllo non associato che effettui un
>somma
>> dei record presenti,potrei farlo attraverso una query a campi
incrociati
>ma
>> volevo sapere se esisteva un modo + semplice.
>=Dcount("*";"tabella o query")
>Antonio
ok... ma dove va?! nel
"controllo non associato" ma dove?
purtroppo sono un novellino abbiate
pazienza
@fly



title: controllo su contatore?!

text:
@fly <
sub...@inwind.it
> wrote in message
140Z105Z48Z16Y...@usenet.iol.it...
>
> >> ok ho controllato ma lě posso solo disabilitare i pulsanti di
> >>
> record,io avrei bisogno di un controllo non associato che effettui un
> >somma
> >> dei record presenti,potrei farlo attraverso una query a campi
> incrociati
> >ma
> >> volevo sapere se esisteva un modo + semplice.
> >=Dcount("*";"tabella o query")
>
> >Antonio
>
> ok... ma dove va?! nel
> "controllo non associato" ma dove?
Nel controllo non associato, nell'origine controllo
Antonio


title: controllo su contatore?!

text:


>Antonio
l'avevo fatto prima e non
funzionava ora funziona perfettamente!
Grazie.
un'ultima cosa... se
dovesse visualizzare il valore a seguito di un filtro?
dovrei inserire una
striga sql seguita dal valore che mi hai suggerito tu?
GRazie mille
