Professional Documents
Culture Documents
FACOLTÀ DI INGEGNERIA
1
Sommario
1 Introduzione:...........................................................................................4
2 Obiettivi................................................................................................. ..6
3 Stato dell’arte........................................................................................ ..8
3.1 Struttura software preesistente.........................................................8
3.2 Sistemi fotografici presenti...............................................................8
3.2 Stato attuale della rete.....................................................................9
4 Requisiti del sistema.............................................................................11
5 Progettazione del database: progettazione concettuale.......................13
5.1 Entità e relazioni principali:.............................................................14
5.2 Estensione delle entità e relazioni: .................................................14
5.3 Generalizzazioni..............................................................................16
5.3.1 Generalizzazione utente...........................................................16
5.3.2 Generalizzazione foto................................................................16
5.3.3 Generalizzazione sconto...........................................................17
5.3.4 Generalizzazione listino............................................................18
5.4 Diagramma Entità-Relazioni con le generalizzazioni.......................19
5.5 Analisi delle entità...........................................................................20
5.6 Analisi delle relazioni.......................................................................25
5.7 Schema entità relazioni con i relativi attributi finale.......................31
6 Progettazione del database: progettazione logica.................................33
6.1 Valutazione dei costi.......................................................................34
6.2 Conversione delle generalizzazione ed eliminazione delle
ridondanze............................................................................................36
6.2.1 Generalizzazione Utente...........................................................36
6.2.2 Generalizzazione Foto...............................................................36
6.2.3 Generalizzazione Sconti............................................................37
6.2.4 Generalizzazione listino............................................................38
6.3 Eliminazione delle relazioni ridondanti............................................39
6.4 Eliminazione degli attributi composti..............................................40
7 Il database........................................................................................... ..41
7.1 Schema completo del database......................................................41
7.2 Le tabelle........................................................................................41
2
8 Interfaccia del progetto.........................................................................49
8.1 Installazione del sistema.................................................................49
8.2 Interfaccia principale.......................................................................49
8.3 Interfaccia di un sistema di stampa................................................50
9 Esempi di utilizzo..................................................................................52
9.1Creazione di un ordine.....................................................................52
9.2Creazione di un report di preventivo da un ordine già esistente:.....57
10 Interfaccia grafica: esempi di codice...................................................60
10.1Caricamento foto............................................................................ 60
11 Conclusioni..........................................................................................62
Appendice A ............................................................................................65
Appendice B.............................................................................................67
Bibliografia:..............................................................................................77
Contenuto CD.............................................................................. .............78
3
1 Introduzione:
Lo studio fotografico Fotomauro necessitava di riprogettare completamente tutto il
software che aveva, per la gestione degli ordini, dei clienti e della lavorazione delle
fotografie. In particolare mi sono occupata della parte di amministrazione, quindi
gestione anagrafiche e ordini in ingresso.
4
Studio delle piattaforme SQL Server 2008 e Visual Studio 2008, in
particolare il linguaggio C#, Crystal report, necessarie per l’implementazione.
(Caratteristiche richieste dal committente)
5
2 Obiettivi
Gli obiettivi prefissati sono i seguenti. La realizzazione di un software che potesse
assolvere ai compiti di gestione dell’anagrafica e di gestione degli ordini in arrivo sia
tramite il canale classico del negozio, sia tramite la nuova del canale web. In
particolare gli obiettivi possono essere riassunti come segue:
O2: Verifica delle caratteristiche del database: controllo delle tavole degli
accessi, ipotizzati, in modo da vedere in quali parti il database risulta
maggiormente utilizzato
6
O4: Controllo della funzionalità: verifica che tutti i requisiti siano stati
rispettati e che il software funzioni nel modo corretto
7
3 Stato dell’arte
8
impatto su l’intero progetto da sviluppare. Infatti sono i sistemi che impongono i
maggiori vincoli, quali i sistemi operativi, la possibilità di comunicazione. Lo studio
fotografico dispone di tre principali sistemi di stampa:
In questo modo i vari formati di stampa vengono divisi tra queste macchine una delle
quali, l’ultima è utilizzata in modo minore rispetto alle altre.
9
Router
Server HP Switch
ML370TG4 NETGEAR
10/100/1000
16 porte
Switch Switch
NETGEAR
NETGEAR
10/100
10/100
16 porte
16 porte
10
4 Requisiti del sistema
In questo capitolo si tratterà sommariamente quali sono i compiti di questo sistema
richiesti dal committente.
In prima cosa sono state definite le tipologie di interfacce a cui gli operatori dello
studio erano a contatto. Essenzialmente sono di due tipi, quella rivolta
all’amministrazione degli ordini e dei clienti e quella presente sul computer collegato
ad ogni macchina che permette la visualizzazione dello stato di stampa e degli ordini.
In primis il modulo di amministrazione avrà le seguenti funzionalità:
Impostazione delle tipologie di carta disponibili per i vari formati e per i vari
sistemi di stampa: è possibile quando si inserisce un ordine la scelta del
formato, comprendente anche le varie tipologie di carta in modo da ottenere
pressoché la totalità dei formati disponibili nello studio.
Definizioni delle classi di sconto: definire sia classi di sconto in base alla
persona, ad esempio se è un fotografo associato che abitualmente acquista
grandi quantità di foto, oppure in base all’acquisto di carte prepagate,
quest’ultime consentono di acquistare determinate quantità di un prefissato
11
formato in modo da ottenere degli sconti, ogni cliente può avere più
prepagate in base alla tipologia di formati che normalmente stampa.
12
5 Progettazione del database: progettazione concettuale
13
5.1 Entità e relazioni principali:
Nella figura 5.1 possiamo vedere le relazioni e le entità principali, le quali sottendo
al processo di registrazione di un nuovo ordine. Un utente chiede al servizio
fotografico di preparare determinate stampe, anche di diverse tipologie, di alcune
foto e in base alle proprietà di quest’ultime vengono gestite in modo diverso dal
personale e con macchinari diversi.
Tutti le entità sono tra loro indipendenti e le relazioni esistono solo quando c’è un
legame tra foto e tipologia e utente e foto.
14
POSSIEDE PREPAGATA TIPO
PAGA LISTINO
MODALITA’
TIPOLOGIA
STAMPA
SCONTO STAMPANTE
15
5.3 Generalizzazioni
UTENTE
CLIENTE FOTOGRAFO
Questo tipo di generalizzazione è di tipo totale ed esclusiva infatti tutti gli utenti
posso essere divisi in queste due categorie la cui appartenenza ad una esclude
automaticamente la possibilità di essere nell’altra, e non esistono ulteriori categorie
nelle quali suddividere gli utenti.
16
FOTO
Nella generalizzazione riportata nella figura 5.4, si può vedere come le foto sia di
due categorie distinte con proprietà ben diverse. Le foto possono essere di tipo
privato e correlate ad un preciso ordine, quelle inserite dall’utente in fase della
creazione della richiesta, oppure di tipo pubblico, visibili e acquistabili da tutti gli
utenti, che solitamente fanno parte di una raccolta creata dal gestore del negozio, che
raccoglie tutte le sue foto più rappresentative degli eventi che ha seguito.
SCONTO
PERSONALE FORMATO
17
Figura 5.5 : Generalizzazione dell’entità sconto
LISTINO
LISTINO
LISTINO FOTO
GALLERIA
Questa generalizzazione nasce dalla necessità di definire un prezzo diverso per una
foto appartenente ad una galleria creata dal fotografo, nella quale si debbono pagare
anche i diritti di utilizzo dell’immagine, da quelle caricate da un cliente, che non
necessitano di particolari sovrapprezzi.
18
5.4 Diagramma Entità-Relazioni con le generalizzazioni
19
LISTINO
LISTINO FOTO
GALLERIA
PAGA LISTINO
MODALITA’
STAMPA
STAMPANTE
TIPOLOGIA
SCONTO
PERSONALE FORMATO
20
Entità utente
UTENTE
SCONTO PERSONALE
21
CHIAVE PRIMARIA
SCONTO FORMATO
Entità prepagata
PREPAGATA
22
questa tipologia di prepagata
Entità Formato
FORMATO
Entità foto
FOTO
FOTO GALLERIA
23
appartengono determinate foto. CHIAVE PRIMARIA
LISTINO FOTO
LISTINO GALLERIA
24
Entità Stampante
STAMPANTE
Qui si procede con la descrizione delle relazioni che intercorrono nel database e delle
loro proprietà ed eventuali attributi.
Relazione ordina
ORDINA
Descrizione relazione Questa relazione lega gli utenti alle foto che decidono di
ordinare
Cardinalità MOLTI A MOLTI: Lega tutti gli utenti alle foto che
hanno ordinato
Relazione possiede
POSSIEDE
25
Descrizione relazione Questa relazione lega gli utenti alle carte prepagate che
possono possedere, infatti un utente può avere molte
prepagate, una per formato, ed ad una tipologia di
prepagate possono corrispondere
Relazione paga
PAGA
Relazione tipo
TIPO
Descrizione relazione Questa relazione lega il formato alle varie prepagate che
si differenziano per la quantità di foto di quel determinato
formato che possono contenere. Esempio i diversi tagli di
ricarica
26
Cardinalità UNO A MOLTI: lega un formato con diverse prepagate
Relazione proprietà
PROPRIETA’
MODALITA’ STAMPA
27
Relazione prezzo
PREZZO
PREZZO GALLERIA
28
29
30
5.7 Schema entità relazioni con i relativi attributi finale
Figura 5.8: Lo schema entità e relazioni finale
31
generalizzazioni che poi nella fase di progettazione logica si procederà ad eliminare
utilizzando diverse tecniche.
32
6 Progettazione del database: progettazione logica
In questa fase si parte dallo schema finale, entità relazioni, ottenuto dalla
progettazione logica e si procede con l’eliminazione di eventuali parti non
implementabili e la valutazione della funzionalità del database così realizzato. Verrà
seguito il seguente schema:
33
6.1 Valutazione dei costi
Ogni singola operazione eseguita sul database ha una determinata frequenza di
ripetizione che influenza il grado di utilizzo di determinate funzioni piuttosto che
tabelle insistenti in un database. Grazie a questa analisi possiamo valutare quali sono
le funzioni più importanti.
Non tutte le operazioni che si possono ipotizzare su questo tipo di database non
debbono essere realizzabili dall’utente, infatti se quest’ultimo elimina informazioni
importanti è possibile che venga a crearsi la presenza di dati inconsistenti all’interno
del database oppure, nel peggiore dei casi, l’impossibilità di accedere ad alcuni dati
per perdita di integrità. Un esempio di una operazioni che non può essere effettuata
da un utente è, per esempio, l’eliminazione di un formato, anche se attualmente non
più presente in catalogo, perché tutti gli ordini creati in precedenza che possiedono
come formato foto tra quelle ordinate quest’ultimo, non sarà possibile ottenere per
esempio una copia della fattura oppure determinare il prezzo per quella foto. Anche il
listino prezzi diventerà inconsistente perché legato a formati foto non più esistenti.
Piuttosto di eliminare sarebbe meglio indicare come non utilizzato, magari mediante
una indicazione vero falso, in modo da non creare incongruenze.
Ciascuna operazione che si intende effettuare nel database può essere di diverse
tipologie quali: interattiva, se l’operazione deve essere eseguita direttamente
dall’utente, quali ad esempio inserimenti ed eliminazioni; batch, azioni che vengono
eseguite in automatico dal sistema senza la necessità che l’utente intervenga
direttamente.
Nella tabella sottostante vediamo indicate le varie operazioni che vengono eseguite
nel database, la loro tipologia e la frequenza ipotetica di esecuzione. Si vedrà come
queste rispettino la legge dell’80/20 cioè il 20% delle operazioni fatte su un database
sono quelle che coprono l’80% del totale delle operazioni. Questo deriva dal fatto
che ci sono alcune operazioni la cui esecuzione è molto rara perché poco utilizzate.
34
OPERAZIONE TIPOLOGIA FREQUENZA
35
6.2 Conversione delle generalizzazione ed eliminazione delle ridondanze
Ora si procede con il raffinamento del diagramma in modo da eliminare le
generalizzazioni.
UTENTE
ID
Anagrafica /
Anagrafica Domicilio /
Registrazione utente
Identificazione utente /
Ruolo
36
FOTO
ID ID
Nomefoto Nome galleria
Foto Descrizione
Data
37
SCONTO
PERSONALE FORMATO
AGEVOLAZIO
UTENTE SCONTO
NE
Percentuale
sconto
38
LISTINO
LISTINO FOTO
GALLERIA
ID
Prezzo
LISTINO LISTINO
POSSIEDE PREPAGATA
PAGA
Come possiamo vedere la relazione che lega l’utente a paga è ridondante perché già
l’utente è legato ad una determinata tipologia di prepagata la quale a sua volta è
legata ad una formato quindi ad alcune foto, oppure ad una. Quindi abbiamo al
trasformazione della ridondanza nel modo seguente:
39
POSSIEDE PREPAGATA
PAGA
Nello stesso modo per i formati le risoluzioni sono state messe in una entità diversa
in modo da evitare di sovraccaricare la tabella.
CARATTERIS
FORMATI RISOLUZIONI
TICHE
40
7 Il database
In questo capitolo si tratterà dello schema finale del database e della sua struttura.
Inoltre si analizzeranno sommariamente le tabelle che lo compongono.
7.2 Le tabelle
Tabella anagrafica
41
Figura 7.1: Tabella anagrafica
Questa tabella raccoglie i dati principali anagrafici del cliente, inoltre raccoglie le
credenziali di accesso tramite web. Con il campo stato si definisce la tipologia di
cliente e quindi lo sconto al quale avrebbe diritto.
Tabella di sponda utilizzata per definire le tipologie di ruolo che un utente ha per
esempio gli sconti fatti solo sulla persona e non anche sulla tipologia di formato
posseduto.
42
Tabella Ruoli
Tabella che raccoglie il nome della tipologia di sconto e nella descrizione le sconto
ottenibile appartenendo a quella determinata categoria. Non solo posso essere
definite categorie per la velocizzazione del processo di elaborazione dell’ordine.
Tabella Provincia
Utilizzata per semplificare l’immissione tramite una combo box della provincia
desiderata in modo da non doverla immettere tutte le volte a mano.
Tabella Stato
Utilizzata per semplificare l’immissione tramite una combo box degli stati desiderati.
43
Tabella foto
Permette l’inserimento di una nuova foto, che essa sia di galleria o normale
permettendo di determinarne le caratteristiche e l’utente che l’ha inserita. La foto
viene poi caricata nel campo foto in modo che ne rimanga una copia sul database.
Tabella Gallerie
Tabella che riassume le caratteristiche principali della galleria con la relativa data di
creazione.
Tabella Ordini:
44
Figura 7.9: Tabella ordini
In questa tabella viene definita la data d’ordine , quella di consegna e l’utente il quale
ha fatto l’ordine. Inoltre è stato indicato un eventuale numero per indicare
eventualmente una cronologia con altri ordini.
Questa tabella di sponda unisce un determinato ordine con una particolare foto la
quale può essere stampata con diversi formati, e quindi con il relativo formato. In
particolare si definiscono il numero di copie che si intendono effettuare.
Tabella Sconti
45
Tabella Utenti Sconti
Tabella di sponda creata per determinare uno sconto su un particolare formato per un
particolare cliente.
Tabella Formati
46
Qui vengono indicate le specifiche particolari dei vari formati.
Tabella Prepagate
47
Figura 7.18: Tabella Sistema stampa
Tabella Listino
La tabella consente la definizione dei vari prezzi di listino per ciascun tipo di
formato.
48
8 Interfaccia del progetto
In questo capitolo si prenderà in esame l’interfaccia utente del progetto.
Principalmente si analizzerà l’interfaccia principale, e di una interfaccia presente su
un pc alla quale è collegata una delle macchine stampanti.
Gestione dell’anagrafica
49
Gestione degli ordini
PAGINA INIZIALE
ANAGRAFICA LISTINO
INSERIMENTO
NOME UTENTE
ORDINI GALLERIA
50
L’eliminazione della foto dalla coda di stampa implica la sua cancellazione dal
dataset il quale poi potrà essere letto da un’altra applicazione che permette la lettura
da parte della macchina stampante della coda di stampa.
51
9 Esempi di utilizzo
9.1Creazione di un ordine
Per prima cosa l’operatore del negozio si trova di fronte alla necessità di inserire le
proprie credenziali le quali permettono l’assegnazione delle operazioni che è
possibile effettuare.
Qualora il login sia erroneo apparirà una finestra di errore come quella che segue
52
Figura 9.2: Finestra di errore
Se si vuole inserire una nuova anagrafica cliente basta procedere nel modo che
segue:
53
Figura 9.3: Form principale modifica angrafica
54
Figura 9.4: Form anagrafica
La form qui sopra riportata, fig. 9.4, è utilizzata per inserire i dati relativi al cliente.
Se quest’ultimo richiede la spedizione in un luogo diverso dalla residenza, necessaria
per la fatturazione, basta spuntare il relativo capo per permettere l’inserimento
dell’eventuale indirizzo alternativo.
Se l’utente è già registrato nel sistema non è necessario il passo sopradescritto quindi
si passa al punto successivo con l’inserimento dei dati del nuovo ordine. Se le foto
desiderate appartengono solo ad una galleria già esistente basta spuntare e si ottiene
la sparizione del tasto carica foto e si apre direttamente una form nella quale basta
selezionare la foto della galleria, la quantità e il formato e si può procedere con
l’acquisto.
55
Figura 9.5: Inserimento nuovo ordine
Nel caso invece le foto siano dell’utente e si necessiti del caricamento basta premere
il pulsante relativo ed apparirà la form che segue, figura 9.6.
56
Dopo l’inserimento del numero di copie e il formato desiderato premendo il pulsante
preventivo si otterrà il prezzo dell’ordine altrimenti si può procedere col caricamento
e con la definizione del metodo di pagamento con la finestra che segue, fig 9.7.
Se il credito della prepagata intestata al cliente risulti con credito inferiore a quello
necessario all’acquisto si prevede un messaggio d’errore e la possibilità di
selezionare il pagamento della differenza o in negozio o tramite l’acquisto di una
nuova prepagata.
57
Figura 9.8: Finestra principale
Per prima cosa si apre la form principale, se è già stato autenticato l’utilizzatore del
programma, figura 1, nella quale troviamo la sottoscheda ordini. Da qui si procede
con la selezione di preventivo. Da qui si apre una finestra nella quale ci viene
richiesto di inserire il nome e cognome dell’utente da cercare, figura 9.8. Da qui se
non ci sono ambiguità di nome ci appaiono le date degli ordini, altrimenti una
finestra che ci fa scegliere quale dei due utenti.
58
Figura 9.10: Report del preventivo dell’ordine
59
10 Interfaccia grafica: esempi di codice
10.1Caricamento foto
Il codice che segue rappresenta una parte particolare del sistema quella del
caricamento delle foto. Infatti si tratta dell’interfacciamento con la store procedure di
riferimento e la trasformazione del file in una serie di byte, tramite la classe
filestream in modo da poterlo inserire in un campo varchar (MAX) ed essere salvato
nel database
cn.Open();
cmd.Parameters["@IDUtente"].Value = IdUtente;
60
cmd.Parameters("@IDOrdine").Value = IDOrdine;
cmd.Parameters("@Foto").Value = file;
cmd.Parameters("@IDGalleria").Value = galleria;
cmd.Parameters("@Copie").Value = copie;
cmd.Parameters("@NomeFile").Value = nomefile;
cmd.Parameters("@IDFormato").Value = IDFormato;
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = cmd;
cmd.ExecuteNonQuery();
cn.Close();
}
Carica immagini (creazione dei dati da passare poi alla store procedure)
Tutti gli altri metodi dell’interfaccia grafica insistono soprattutto nella parte della
creazione delle connessioni con il database quindi ritengo superfluo descriverle una
per una.
61
11 Conclusioni
Gli obiettivi richiesti dal committente sono stati di massima raggiunti, infatti il
progetto rispecchia le caratteristiche da lui desiderate.
Studio della struttura del database creazione del diagramma ER: raggiunto
62
Questo progetto però ancora non è stato testato nel reale sistema lavorativo, ma solo
tramite il software a mia disposizione. La fase successiva sarà infatti di riunirlo con
gli altri pezzi costruiti da altre persone in modo da vedere se l’intero sistema
funziona, eventualmente controllare che i requisiti nel tempo non siano variati.
Eventuali sviluppi futuri potrebbero essere l’integrazione con il sistema realizzato
con quello di fatturazione, che ad ora risulta separato e quindi necessita di un doppio
inserimento dei dati dei compensi ricavati dai vari ordini effettuati.
63
64
Appendice A
65
66
Appendice B
Store procedure create
Visualizzazione stati
Visualizzazione sconti
ALTER PROCEDURE [dbo].[VisualizzaSconti]
AS
BEGIN
Visualizzazione Ruoli
ALTER PROCEDURE [dbo].[VisualizzaRuoli]
AS
BEGIN
67
Visualizzazione Provincia
ALTER PROCEDURE [dbo].[VisualizzaProvincia]
AS
BEGIN
Visualizzazione Prepagate
ALTER PROCEDURE [dbo].[VisualizzaPrepagate]
AS
BEGIN
Visualizzazione Ordini
ALTER PROCEDURE [dbo].[VisualizzaOrdini]
AS
BEGIN
Visualizzazione Listino
ALTER PROCEDURE [dbo].[VisualizzaListino]
AS
68
BEGIN
SELECT Tbl_Listino.IdFormato, Tbl_Listino.Prezzo, Tbl_Formati.Tipo FROM
Tbl_Listino,Tbl_Formati
WHERE Tbl_Formati.ID = Tbl_Listino.IdFormato
END
Visualizzazione Galleria
ALTER PROCEDURE [dbo].[VisualizzaGallerieNome]
AS
BEGIN
Visualizzazione Foto
ALTER PROCEDURE [dbo].[VisualizzaFoto]
@IDUtente int
AS
BEGIN
Visualizzazione Formati
ALTER PROCEDURE [dbo].[VisualizzaFormati]
AS
69
BEGIN
SELECT ID, Tipo FROM Tbl_Formati
END
Visualizzazione Preventivo
ALTER PROCEDURE [dbo].[Report]
@Id as int
AS
BEGIN
SELECT Tbl_OrdiniFoto.IDFormato, Tbl_OrdiniFoto.Copie,
Tbl_Listino.Prezzo, Tbl_Formati.Tipo FROM Tbl_OrdiniFoto, Tbl_Listino,
Tbl_Formati
WHERE Tbl_OrdiniFoto.IDOrdine = @Id AND Tbl_Listino.IDFormato=
Tbl_OrdiniFoto.IDFormato AND Tbl_Formati.ID= Tbl_OrdiniFoto.IDFormato
END
Ottieni ID
ALTER PROCEDURE [dbo].[OttieniID]
@Cognome nvarchar (50),
@Nome nvarchar (50)
AS
BEGIN
70
@NomeUtente nvarchar (50),
@Password nvarchar (50),
@ID int
AS
BEGIN
AS
BEGIN
Insert into Tbl_Prepagate (Nome, ID, Quantità, Prezzo)
values (@Nome, @IDFormato, @Quantità, @Prezzo)
END
71
AS
BEGIN
Declare @rimanenza as money
set @rimanenza = (Select Prezzo From Tbl_Prepagate Where ID =
@IDPrepagata)
Insert into Tbl_PrepagateQuantita (IDUtente, IDPrepagata, Rimanenza)
values (@IDUtente, @IDPrepagata, @rimanenza)
END
AS
BEGIN
Declare @oracorrente as datetime
set @oracorrente= getdate ()
Insert into Tbl_Ordini (IdUtente, DataOra, Numero, ConsegnaEntroIl)
values (@IDUtente, @oracorrente, @Numero, @DataConsegna)
END
Inserimento listino
ALTER PROCEDURE [dbo].[InserisciListino]
@IDFormato int,
72
@Prezzo money,
@PrezzoGalleria money
AS
BEGIN
AS
BEGIN
Declare @oracorrente as datetime
set @oracorrente= getdate ()
Insert into Tbl_Galleria (Titolo, Data, Descrizione)
values (@Titolo, @oracorrente, @Descrizione)
END
73
@IDFormato int,
@Formato nvarchar (50),
@Foto varbinary (MAX),
@Copie int,
@IDOrdine int
AS
BEGIN
Declare @a int
Insert into Tbl_Foto (IdUtente, IdGalleria, NomeFile, Formato, Foto)
values (@IDUtente, @IDGalleria, @NomeFile, @Formato, @Foto)
set @a = @@IDENTITY -- per ritornare l'ultimo valore del contatore
Insert into Tbl_OrdiniFoto (IdOrdine, IdFoto, IdFormato, Copie)
values (@IDOrdine,@a, @IDFormato, @Copie)
END
74
@Citta nvarchar (50),
@Provincia nvarchar (2),
@CAP nvarchar (10) = null,
@Stato nvarchar (50) = null,
@Sconto nvarchar (50) = null
AS
BEGIN
Declare @s int
Declare @a int
set @s = (select IdSconti from tbl_Sconti where Descrizione = @Sconto) --
se c'è solo un valore in un solo campo
END
Cancella anagrafica
ALTER PROCEDURE [dbo].[CancellaAnagrafica]
@ID int
AS
BEGIN
75
DELETE Tbl_Angrafica WHERE ID=@ID
END
76
Bibliografia:
[Autori Vari, 2007] SQL Server, Guida per l’amministratore di rete, Hoepli
[Sharp John, 2008] Microsoft Visual C# 2008 passo per passo, Mondadori
Informatica
77
Contenuto CD
• Tesi.docx
• Tesi.pdf
• Presentazione.pptx
• Presentazione.pdf
78