Suivez et participez au développement du nouvel OpenCellar : PLOC.co
> Open Cellar for Windows
> Help Center
> FAQ
> Download Center
> Enter the Forum
> Version history
> Developers resources
> Open Cellar for Mobile
> Help Center
> FAQ
> Download Center
> Enter the Forum
> Version history
> Open Cellar for Mac/Linux
> Help Center
> FAQ
> Download Center
> Enter the Forum
> Version history
> Developers resources
> My Account
> My Live services
> My pages
> My library
> My published wines
> My labels
> My posted messages
> Write a page
> Open Cellar Forum Index
> Windows Forum
> Mac/Linux Forum
> Mobile Forum
> Search for and import wines
> Search for labels
> Compare prices (Sniffer)
Search:
> Search with all engines
> Search in forums
> Search in personal pages
> Search on open-cellar.com
> Search in wine cards
> Search in labels
> Search in price comparison tool (Sniffer)
Welcome (
connect
-
create an account
)
Home
»
The forum
»
Open Cellar Home Edition (Windows)
Nuage de tags
Open Cellar
Scripts
Etiquette
PPP
Cellar book
Mac
Vista
Synchronisation
Excel export
vinoXml
usb
sniffer
backup
import
printing
chardonnet
palm
statistics
Linux
Suivi des convives
02/10/2007
Reply
Suivi des convives
svaissie
14 posts
Si ca peut servir...
Pour le suivi des consos je crée une fiche conso avec en commentaire les personnes avec qui je la bois
Pour vérifier ce que j'ai bu avec une personne G écrit ce script (un filtre est à appliquer en cas de grosse consommation ;o))
if(App.ActiveCellar == null)
{
MessageBox.Show("Aucune cave n'est ouverte");
return;
}
TableManager manager = new TableManager(App);
manager.BeginUpdate();
DataTable table = new DataTable("Price");
table.DefaultView.AllowDelete = false;
table.CaseSensitive = false;
table.DefaultView.AllowEdit = false;
table.DefaultView.AllowNew = false;
// SysId
DataColumn col = new DataColumn("SysId", typeof(string));
col.Caption = "SysId";
table.Columns.Add(col);
// Date
col = new DataColumn("Date", typeof(string));
col.Caption = "Date Consommation";
table.Columns.Add(col);
// Nom
col = new DataColumn("Name", typeof(string));
col.Caption = "Vin";
table.Columns.Add(col);
// Millesime
col = new DataColumn("Mill", typeof(ushort));
col.Caption = "Millesime";
table.Columns.Add(col);
// Commentaire
col = new DataColumn("Comment", typeof(string));
col.Caption = "Commentaire";
table.Columns.Add(col);
table.BeginLoadData();
// Liste des vins
ObjectCollection oc = manager.Application.ActiveCellar.GetCollection((ushort)ObjectType.Wine);
for(int i = 0; i < oc.Count; i++)
{
Wine w = (Wine)oc[i];
// Fiches achats consos
for (int j = 0; j < w.Purchases.Count; j++)
{
PurchaseSales ps = (PurchaseSales)w.Purchases[j];
// Les consos sans les achats
if ((ps.ConsumeBottles!=0) && (ps.PurchaseBottles==0))
{
DataRow r = table.NewRow();
r["SysId"] = w.SystemUID;
r["Date"] = ps.Date.ToShortDateString();
r["Name"] = w.Name.Trim();
r["Mill"] = w.Year;
r["Comment"] = ps.Comment;
table.Rows.Add(r);
}
}
}
table.EndLoadData();
manager.DataSource = table;
manager.EndUpdate();
ITableWindow tableWindow = (ITableWindow)App.GetWindow(WindowType.Table, manager);
if(tableWindow != null)
{
tableWindow.Show();
}
02/10/2007
Reply
Re : Suivi des convives
Administrateur
3099 posts
Bô
Je l'ajouterai au centre d'aide.
Matthieu
03/10/2007
Reply
Re : Suivi des convives
svaissie
14 posts
Avec plaisir le fait que les utilisateurs contribuent devrait etre un plus
Tu noteras que j'ai toujours un pb au niveau du tri des colonnes le mieux serait :
Date | Vin | Mill | Comment
Stephane
03/10/2007
Reply
Re : Suivi des convives
Administrateur
3099 posts
Pour le probleme d'ordre cela vient pas de ton script mais d'OC car celui ci mémorise la taille et la position des colonnes.
Remplace la ligne suivante
DataTable table = new DataTable("Price");
Par
DataTable table = new DataTable("Price2");
Tes colonnes seront bien dans le bonne ordre.
Matthieu
04/10/2007
Reply
Re : Suivi des convives
Thewolf
99 posts
Bonjour et merci pour ce script.
J'ai 2 questions :
1) Qu'est-ce que SystemUID et à quoi sert-il dans ce script (il ne s'affiche pas dans le rapport) ?
2) Je ne comprends pas bien la condition :
if ((ps.ConsumeBottles!=0) && (ps.PurchaseBottles==0))
il me semble que la 1ère partie est suffisante pour s'assurer qu'il s'agit bien d'une consommation et d'autre part, si on a entré un achat et une conso dans la même fiche, on ne l'aura pas dans le rapport ...
Bonne journée.
Christian
04/10/2007
Reply
Re : Suivi des convives
svaissie
14 posts
Salut
Pour le SystemUID pour tout te dire je me suis inspiré du calcul du prix, le champ y était sans être utilisé le l'ai laissé.
Pour la double condition
ps.ConsumeBottles!=0 forcement pour les degustations
ps.PurchaseBottles==0 parceque quand je retrouve une vieille facture de 6 bouteilles et qu'il en reste 4 Dans la même fiche je fait l'entrée de 6 plus la conso de 2 (sans que ca corresponde à une degustation donnée)
Stéphane
04/10/2007
Reply
Re : Suivi des convives
Thewolf
99 posts
Merci Stéphane.
Pour le SystemUID, j'ai essayé de le supprimer du script et cela marche tout aussi bien ...
04/10/2007
Reply
Re : Suivi des convives
Administrateur
3099 posts
Le SystemId est utilisé par OC sans celui ci lors du double clic sur la fenetre il ne vous ouvrira pas la fiche vin correspondante.
Matthieu
04/10/2007
Reply
Re : Suivi des convives
Thewolf
99 posts
Merci pour cette précision.
Christian
© 2006-2014
Matthieu DUCROCQ
- All rights reserved - Last update: january 2014 |
|
Support Open Cellar
|
Contact
|
About