Quantcast
Channel: Visual Basic Tips and Tricks
Viewing all 2212 articles
Browse latest View live

Gestione concorrenza su più record

$
0
0

Ciao a tutti, grazie ai vostri consigli, un pò di studi ed esempi vari sono riuscito a gestire la concorrenza per il caricamento, modifica e salvataggio dati su di un DB Access in rete.

Durante il salvataggio, tramite una transazione blocco il record, verifico che non sia stato modificato tramite un campo timestamp creato manualmente ed effettuo il salvataggio lasciando all'utente la scelta di sovrascrivere eventuali modifiche apportate da altri utenti. Quindi riesco a modificare e salvare un singolo record (ad esempio un anagrafica) .

Adesso mi trovo in una situazione diversa e spero che come sempre, possiate consigliarmi la soluzione più consona ed 'elegante'.

Nello specifico :

per ogni cliente registrato in archivio in una tabella 'massaggi' posso avere fino ad un massimo di 4 record che comprendono le ore massaggi espresse in minuti. Ogni seduta può durare da 60 a 120 minuti per un totale massimo di 4 ore (240 minuti) . Al load della form carico gli eventuali dati presenti in archivio in un datagrid che contine 4 righe fisse. L'utente può aggiungere (fino ad un massimo di 4 ore)  e/ o modificare i dati e salvarli. Quale procedura più corretta dovrei seguire per controllare che un altro utente non abbia inserito nel frattempo altri massaggi e quindi evitare che si superino sia il massimo di record 4 che le 4 ore previste ?

 


Nesting

$
0
0

 

Buongiorno a tutti.

 

Dovrei fare un semplice programmino per un amico per l'ottimizzazione del taglio lineare.

 

In pratica imputo una serie di barre disponibili con numero e lunghezza.

 

Poi imputo i pezzi da ottenere sempre con numero e lunghezza.

 

A questo punto devo trovare la combinazione che mi consenta di avere il minor scarto di materiale possibile.

 

Ho visto che esistono molti programmi già fatti in internet ma a me servirebbe trovare solo un componente compatibile con vb.net per il calcolo dell'algoritmo e non riesco a trovarne.

 

Qualcuno di voi ha già affrontato questo problema e saprebbe indicarmi dove trovarne uno ovviamente a pagamento?

 

Simone.

 

Modifica textbox in un panel

$
0
0

Ho questo problema, in un panel (ma potrebbe anche essere un groupbox) ho una serie di textbox

A me servirebbe capaire se uno di questi texbox viene  modificato. Al momento ho associato un evento TextChanged ad ogni textbox con un ciclo di AddHandler al form_load, ma mi piacerebbe capire a livello di "contenitore" se uno degli oggetti figlio è stato modificato.

E' fattibile? 

gestione Treeview

$
0
0

Ciao a tutti,

sto cercando di usare un menu a tendina, ho usato il componente Treeview e più o meno tutto funziona, quando però devo cliccare per far aprire un nuovo form, funziona solo il primo click, se chiudo il form e provo a riaprilo non funziona più, devo cliccare su un altra voce e poi tornare a quella precedente in questo modo funziona di nuovo.

Questo è il codice che ho usato per la gestione del click

 

PrivateSub TreeMenu_AfterSelect(sender AsObject, e AsTreeViewEventArgs) Handles TreeMenu.AfterSelect
Dim TN AsTreeNode = Me.TreeMenu.SelectedNode
SelectCase TN.Text
Case"Gestione Aziende"
Dim myForm AsNewfrmAziendaAggiunde
myForm.MdiParent = Me
myForm.TopLevel = False
myForm.Dock = DockStyle.Fill
EndSelect
End Sub

Cosa mi suggerite, dove sto sbagliando ? vi ringrazio, saluti

M.

listview ricerca su due campi

$
0
0

sto sperimentando la listview,esaminamdo il programma sui db di Carbone carlo.

in questo programma vi e' la ricerca di un campo(cognome) e quindi la evidenziazione di un record di un db.mdb su di una listview ecco il codice:

Private Sub Command1_Click(Index As Integer)
 Select Case Index

 Case 1

Unload Me

Case 0

 If Len(Text1) = 0 Then

MsgBox "Specificare un cognome valido.", vbCritical, "Errore"

 Exit Sub
  Else
  Dim sFound
 With frmGESTDB
Set sFound = .lstADD.FindItem(Text1, , , lvwPartial)
 If sFound Is Nothing Then
MsgBox "Non è stata trovata alcuna voce come ("& Text1 & ")", vbCritical, "Errore"
Exit Sub
 Else
 sFound.EnsureVisible
sFound.Selected = True
Unload Me
 .lstADD.SetFocus
End If
 End With
End If
    End Select

End Sub

Volendo invece fare la ricerca con due campi (cognome e nome) come deve essere trasformato il listato

eventi e interruzione esecuzione

$
0
0

Ho due domande di architettura:

1) Ultimamente ho cominciato (grazie ai suggerimenti di Diego) a passare argomenti tra form differenti grazie agli eventi. Ho usato questa tecnica in differenti form con differenti eventi personalizzati. Ora in tutti i form interessati ho delle istruzioni Public Event nomeevento.... etc. etc.. Ovviamente sono tutti eventi diversi. Mi chiedevo se sia corretto (e se funziona) mettere tutte le dichiarazioni di evento in un posto solo (ad esempio in un modulo) in modo da "centralizzarne" la gestione (magari evitare di dare lo stesso nome_evento a eventi differenti).

2) A volte mi trovo con esecuzioni particolarmente lunghe (ad esempio la produzione di un report) e vorrei dare all'utente la possibilità di interrompere l'esecuzione (con il classico bottone Cancel). In VB6 ero riuscito a farlo intercettando la pressione sul bottone ma in VB .NET non mi funziona. Esiste una procedura adatta a questo scopo? Ho pensato a usare un thread differente per lanciare l'operazione lunga. E' la strada corretta?

Grazie per i suggerimenti

Stefano

Connessione Database Acess

$
0
0

Buona sera a tutti, premetto che programmo per hobby e per passione ma non sono molto ferrato sto iniziando ad usare il net da poco fin ora ho usato VB6.

La prima domanda è per l' ascesso ai dati in un database di Access meglio usare ADODB o OLEDB.  Ho fatto un paio di prove con ADODB il codice è molto più simile a VB6 mentre con OLEDB cambia un po. Per aggiungere ADODB sono andato in riferimenti e dalla scheda NET ho selezionato ADODB 7.0.33, mentre per l' OLEDB non è servito aggiungere riferimenti ! Pero ho notato che pubblicando l' applicazione crea un setup che va ad installare il solo frame network 4.0 e pero il programma funziona sulla macchina dove ho installato VB2015 ma non sulle altre dove eseguo il setup non installa ADODB mentre con OLEDB funziona !

Io sarei molto più comodo con ADODB ma volevo sapere se è messa li solo per transazione o se e un buon metodo per l' accesso ai dati ? 

 

E come faccio con il setup su macchine nuove non funziona ?

 

Grazie in anticipo a tutti

 

 

Ottenere risposta da script PHP

$
0
0

Buongiorno a tutti,

dalla mia app VB6 interrogo uno script php a cui passo un valore.

La script nel body (echo), mi restituisce una stringa di risposta.

Dim IE As New SHDocVw.InternetExplorer

Dim urlControlloLice As String

urlControlloLice  = "http://scriptphp.php?licenza="& "NumeroDiLicenza"

io devo leggere l'echo, quindi aspetto che lo script termina, ma poi come leggo l'echo/body della risposta?

Grazie


check su tabpage aperte dinamicamente

$
0
0

Ciao,

ho creato un TabControl che le TabPage che si aprono dinamicamente quando si esegue l'evento click di un pulsante.
Ora volevo controllare prima dell'apertura della Tab se era già aperta, ma non riesco in quanto con il controllo TabControl1.TabPage.Contains(nometab) non posso in quanto non conosco a priori il nome delle tab, ma viene assegnato all'apertura con un myTab.Text = myForm.Text.

Il codice che uso attualmente per gestire il TabControl1 è:

Dim myTab As New TabPage
frmMarca.TopLevel = False
frmMarca.MdiParent = Me
frmMarca.Dock = DockStyle.Fill
myTab.Text = frmMarca.Text
myTab.Controls.Add(frmMarca)
TabControl1.TabPages.Add(myTab)
TabControl1.SelectedTab = myTab
frmMarca.Show()

In questo modo l'apertura e la creazione delle tab funziona bene, ma non riesco a controllare se sono già aperte.

Grazie

M.

listview ricerca su item ed subitem,come fare ?

$
0
0

Ripropongo la mia precedente discussione,esponendola in modo piu chiaro.Come posso effettuare una ricerca su di un DB access mdb,"collegato ad una listview " affiche' vengano soddisfatte sia l'item che il subitem.In definitiva avendo un elenco di cognomi con i relativi nomi (Pippo Franco ecc)come faccio a verificare se esiste nell'elenco Pippo Franco e non solo Pippo ? e come posso puntare proprio a quella riga ?

Ci sto tentando ormai da piu' giorni,ma non riesco proprio !

DataList e recordset.filter

$
0
0

ciao,

sto scrivendo un programma in vb6 che legge dei dati da un db access e elenca uno dei campi in una DataList.

Tutto funziona bene tranne il fatto che, se applico un filtro al recordset, questo non fa aggiornare i dati nella DataList. Il filtro funziona perchè il recordcount corrispondente si riduce della giusta qualntità dopo il filtraggio... è solo la DataList che non si aggiorna

Ho visto che il problema è già stato affrontato su questo e altri forum, ma mai risolto. Ho già provato tutti i consigli che vengono dati in questi link:

1. applicare il filtro e poi annullare e riassegnare il DataSource e tutte le altre proprietà ad esso legate alla DataList

2. Refill, Refresh, requery e così via

Non sono riuscito a risolverlo. Qualcuno mi sa aiutare?

grazie

Qual'è la prima riga di codice di un form (prima di form_load)

$
0
0

Ciao Ragazzi, ho necessità di sapere qual'è la prima riga di codice eseguita da un programma o meglio del form dichiarato di avvio.

Ho un problema con un cliente a cui non si avvia il programma.

Lo splashscreen parte, ma nella fase di caricamento del form principale, esce senza errore.

Ho messo nella prima riga  un messagebox, ma nel pc del cliente non ci arriverà mai.

Snippet
MessageBox.Show("step7") 
Non succede nulla. 

il programma non si avvia. 

non si vede il form. 

Non genera messaggi di errore.

Nella task del s.o. non c'è traccia.

non ho strumenti per capire cosa lo sbatte fuori .

Qual'è il modo per capire (in assistenza remota, modificandogli l'exe) di capire quale sia il motivo?

Il pc è americano ed il collega è a chicago. 

In assistenza remota ho potuto vedere. da segnalare che ad un suo collega funziona bene.

Cosa mi consigliate?

Ciao Sebastiano

Cambiare riferimenti dll runtime

$
0
0

Ciao Ragazzi, ritorno ad un vecchio problema irrisolto.

Ci ritorno ad intervalli.

Sto scrivendo un plugin di un software madre. faccio riferimento a delle dll che l'utente troverà installate .

Le dll non stanno in cartelle comuni, ma in cartelle del programma madre.

Se l'utente decide di installare il programma principale in una cartella diversa dal default, il mio programma non funziona.

devo poter impostare la prima volta la posizione del programma madre e lanciare il mio con i riferimenti nuovo.

Ovvero devo cambiare  a runtime il path delle dll.

Qual'è il modo per farlo, se fosse possibile?

Grazie

Sebastiano Floridia

 

 

 

Ricerca da textBox in db

$
0
0

Buongiorno, come da oggetto devo richiamare, inserendo un dato(es.:Nome) in una textBox, lo stesso dato se si trova in un DB. Come faccio? 

Leggendo su MS ho visto qualcosa ma......

Public Class frmRicerche

    Private Titolo As String

    Private dboIOPROVA As Object

    Private Sub frmRicerche_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        Form1.IOPROVATableAdapter.Fill(Form1.ProvaDataSet.IOPROVA)

        cmdStampaSelezione.Enabled = False

        l        Titolo = "ELENCO DEGLI AMICI"

        Me.Text = Titolo

    End Sub

    Private Sub cmdAvviaRicerca_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdAvviaRicerca.Click

        dboIOPROVA.SelectCommand.Parameters("Cognome e Nome").Value = txtNome.Text

    End Sub

End Class

Grazie in anticipo per l'aiuto. Kikko


 

Strana anomalia in Vb.Net

$
0
0

Non so se vi è mai capitato ma a me nel 80 % dei casi l'espressione stringa 'Si desidera salvare in archivio ...' ma anche la stringa "interno" etc etc ... dopo un pò viene strasformata in 'In archivio' oppure 'Interno' e questo mi può causare problemi di confronto tra le stringhe oltre che commenti poco piacevoli da parte dell'utente quando vede i messaggi a video. C'è una qualche impostazione che forse devo modificare ? Preciso che non succede durante la digitazione ma dopo qualche compilazione.

Grazie e un saluto a tutti.


assegnare valore a Parametro sql con if

$
0
0

Ho questa istruzione che mi viene segnalata come errata

sqlCMD.Parameters.Add("Tel1", SqlDbType.NVarChar, 50).Value = If(IsNumeric(txtTelUfficio1.Text), txtTelUfficio1.Text, DBNull.Value)

Mi serve per assegnare Null al campo Telefono1 nel caso la textbox txtTelUfficio1 fosse vuota

L'errore che mi viene restituito è

Non è possibile dedurre un tipo comune e Option Strict On non consente di usare 'Object'.  

Ho usato IsNumeric perchè la texbox accetta solo numeri. Il campo è definito NVarchar perchè se fosse Int perderi gli zeri del prefisso

rendere cartella pubblica in win10

$
0
0

Ciao Ragazzi, forse OT.

In attesa di risolvere un problema di dll refrenziate nel posto sbagliato, Ho necessità di rendere una cartella pubblica in win10.

Così come è una cartella c:\windows\system32 etc..

 

Come posso fare, anche manualmente, in win10  a rendere pubblica una cartella.

esempio:

c:\contenitoredll\testdll

Grazie.

Ai temp di xp c'era un file bat in cui si impostavano le cartelle pubbliche.

 

Grazie

Sebastiano Floridia

 

Utilizzare servizi in WPF

$
0
0

Salve a tutti , 

ho seguito un tutorial on line , dove era possibile creare un servizio semplice , il calcolo di un raggio

ma purtroppo non sono riuscito a metterlo on-line 

la mia domanda è : per far girare un servizio sul proprio sito , è necessario che il proprio sito venga impostato in una particolare modalità ?

bisogna fare qualcosa in particolare ?

purtroppo non riesco proprio a capire


Fundamentals of custom essay writing service

$
0
0

Essay writing service is an important part in academic life. First students enter in college or university life. Later on during the period, you are asked to write some assignment writing papers, research papers or coursework reports for your chosen subjects and chapters. There are three basic steps to complete a course work report, research, reading and writing. As its a hard process of writing, most of the students search custom essay writing service (http://www.essayscouncil.com) to get it done and make satisfied with their project works. It is the very easiest way to get the works done.   

Universal App

$
0
0

E' possibile importare oggetti 3D su universal app ? 

Se si, come ? 

 

Viewing all 2212 articles
Browse latest View live