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
COMPLEMENT DU LIVRE DE CAVE
23/08/2008
Reply
COMPLEMENT DU LIVRE DE CAVE
delph et ludo
58 posts
Bonjour Matthieu
En esperant que les vacances aient été bonnes, nous vous remetons au boulot
Plus sérieusement, pensez vous qu il soit posqqbile d intégrer dans le livre de cave et dans celui en mode compacté , le total des bouteilles en stock pour chaque vin?
Cela permettrait par exemple de pointer sa cave avec le livre, de corriger de maniere manuscrite et ensuite de corriger sur OC sans avoir a faire des aller-retopurs en permanence entre la cave et le PC
Merci
Ludovic
25/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
Administrateur
3099 posts
Hello,
Voici le script qui vous imprimera le livre de cave compacté avec en plus le stock pour chaques fiches.
App.Animate(AnimationType.Work, true); App.SetCursor(true); // // Modifiez ici le titre du report // string reportName = "Liste des vins"; // // Creation entete report // ReportTable rt = new ReportTable(reportName); // // Région // ReportColumn rcArea = rt.NewColumn("Région"); rcArea.Size = 80; // // Appellation // ReportColumn rcApp = rt.NewColumn("Appellation"); rcApp.Size = 100; // // Nom // ReportColumn rcName = rt.NewColumn("Nom"); rcName.Size = 250; // // Classement // ReportColumn rcCl = rt.NewColumn("Classement"); rcCl.Size = 100; // // Couleur // ReportColumn rcColor = rt.NewColumn("Couleur"); rcColor.Size = 75; // // Année // ReportColumn rcYear = rt.NewColumn("Année"); rcYear.Size = 40; rcYear.ContentAlignment = ReportContentAlignment.Right; rcYear.DataType = ReportColumnType.Numeric; // // Nombre bouteilles // ReportColumn rcBottles = rt.NewColumn("Bouteilles"); rcBottles.Size = 60; rcBottles.ContentAlignment = ReportContentAlignment.Right; rcBottles.DataType = ReportColumnType.Numeric; // // Format // ReportColumn rcFormat = rt.NewColumn("Format"); rcFormat.Size = 50; // // Alimentation de la source // ObjectCollection wines = App.ActiveCellar.GetCollection((ushort)ObjectType.Wine); for (int i = 0; i < wines.Count; i++) { Wine wine = (Wine)wines[i]; ReportRow row = rt.NewRow(); row[0] = wine.Area.Name; row[1] = wine.Appellation.Name; row[2] = wine.Name; row[3] = wine.Classification.Name; row[4] = "Champagne"; if(wine.WineColor == ColorType.Red) { row[4] = "Rouge"; } else if(wine.WineColor == ColorType.White) { row[4] = "Blanc"; } else if(wine.WineColor == ColorType.Rosy) { row[4] = "Rosé"; } else if(wine.WineColor == ColorType.Yellow) { row[4] = "Champagne"; } else if(wine.WineColor == ColorType.LiqueurLike) { row[4] = "Liquoreux"; } else if(wine.WineColor == ColorType.Misc) { row[4] = "Autre"; } if(wine.Year != 0) { row[5] = wine.Year.ToString(); } // // Gestion manuelle // if(wine.ManualManagement) { row[6] = wine.Bottles.ToString(); } else { row[6] = wine.RackItems.Count.ToString(); } row[7] = wine.BottleType.Name; } // // Tri des elements // rt.Sort("0-0;1-0;4-0;5-1"); // // Génération // System.Collections.ArrayList list = new System.Collections.ArrayList(); list.Add(rt); IReport report = App.ReportEngine.GetSystemReport(PredefinedReport.Grid); string destFileName = App.Path + "Cache\\UserWinesGrid.pdf"; bool success = false; try { report.Create(list, destFileName); success = true; } catch(Exception ex) { MessageBox.Show("Erreur (1)"); } // // Affichage du report // if(success) { IShellWindow shellWindow = (IShellWindow)App.GetWindow(WindowType.Shell, null); if(shellWindow != null) { shellWindow.Start(destFileName); } } App.SetCursor(false); App.StopAnimate();
Astuce : enregistrez le script dans un fichier texte avec l'extension .ocs et dans le repertoire Scripts d'OC. Au prochaine démarrage il sera accessible via le menu Préférences -> Scripts de configuration -> Nom du fichier
Matthieu
28/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
delph et ludo
58 posts
hello Matthieu
Merci c a tourne nickel
En plus en me permettant d entrer j ai regarder le code source et je peux redimensionner les colonnes et les intitulés.
Par contre comment faire pour les classer par année ?
Cordialement
Ludovic
PS : Super Job que tu fais , merci au nom de tous les amateurs de vins
28/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
Administrateur
3099 posts
Parfait !
Pour appliquer le tris placez vous à la ligne 130 rt.Sort("")
La méthode Sort prend une chaine en parametre :
{index base 0 de la colonne}-0 pour un tri décroissant
oui
de {index base 0 de la colonne}-1 pour un tri croissant
Ca nous donne pour l'année :
rt.Sort("5-1");
Si vous souhaitez appliquer plusieurs filtres séparez les par le ;
rt.Sort("5-1;0-0");
Matthieu
28/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
delph et ludo
58 posts
bonjour Matthieu
ca tourne du feu de dieu, apres des essai des versions bis etc.. j arrive a la présentation que je cherchai
merci
30/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
delph et ludo
58 posts
Matthieu
Une autre question concernant le livre compacté avec les quantités et le tri
rt.Sort("6-0;5-0"); me genere un tri par nombre de bouteilles mais ne prend pas en compte la chronologie , hors j aimerai comme sous excel organisé un tri du genre " nombre decroissant ET par année décroissante "
Ludovic
31/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
Administrateur
3099 posts
Vous êtes sur des index 6 & 5 ? Attention c'est en base 0.
Si oui pouvez copier votre script.
Matthieu
31/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
delph et ludo
58 posts
bonjur matthieu
Le rapport compacté se présente ainsi avec les rubriques suivantes
Region / Appellation / Nom / Classement / Couleur Millesime / Nb / Format
et manipulant votre script, j ai reduit a :
//
// Tri des elements
//
rt.Sort("5-0;6-0");
ou 5 renvoi au millésime et 6 au Nb de bouteilles en stock
J aimerai avoir un tri double millésime ET nb , or, seul el premier est pris en compte et pas le second ou l inverse mais jamais les deux en meme temps
On peut aussi imagioner trier par Région de maniere croissante ET millésime decroiisant ET Nb de bouteille décroisaant
Voici ma problématique
Ludovic
31/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
Administrateur
3099 posts
Hello,
Le moteur de rapports est capable de filtrer sur plusieurs colonnes.
Au niveau de la déclaration des colonnes année & bouteilles avez vous bien cette ligne :
rcYear.DataType = ReportColumnType.Numeric;
Par contre le filtre sur les types de données numériques s'effectue en ordre décroissant si vous précisez 0 et croissant si vous précisez 1 (5-1) alors que sur les types chaines c'est l'inverse.Ma logique n'est pas toujours logique...
Prenons un exemple afin d'éviter les erreurs de communications ! :
3 vins en cave, 1 de 2000 (Vin 1) et 2 de 2005 (Vin 2 & 3)
Le stock est de 3, 6 et 7 bouteilles à la sortie le report affichera (5-0;6-0) 0
Vin n°3 2005, 7 bouteilles
Vin n°2 2005, 6 bouteilles
Vin n°1 2000, 3 bouteilles
Est ce que pour vous c'est le résultat attendu ?
Matthieu
31/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
delph et ludo
58 posts
yes sir
that 's correct
tout a fait
Ludovic
31/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
Administrateur
3099 posts
Ok mais ce n'est pas le résultat obtenu avec le script ? Vous voulez pas me l'envoyer ce sera plus simple.
Matthieu
31/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
delph et ludo
58 posts
envoye , c est fait
31/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
delph et ludo
58 posts
Matthieu
STOPPEZ LES MACHINES
En cherchant dans les scripts sur le site, cela correspond en fait a celui dit "De compet'" a savoir l inventaire de la cave avec mise en forme spécifique
Je n ai qu a modifier le script en shootant la colonne relative au prix
Merci pour tout et shame on me de n avoir pas vu avant
Ludovic
31/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
Administrateur
3099 posts
Parfait
Script de compet' celui la il porte bien son nom mes doigts et mon cerveau s'en rappellent encore !
31/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
delph et ludo
58 posts
euh..............
je neutralise les lignes que je ne veux pâs voir apparaitre et le script y marche plus oinnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
31/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
delph et ludo
58 posts
matthieu
dans script de compet, peux tu me confirmer que :
A/ je n ai qu a neutraliser
Prix
Total pour les faire disparaitre du rapport?
B/ L aneutralisation se fait par l adjonction en debut de ligne de // (est l équivalent de REM en Basic?)
Ludovic
31/08/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
delph et ludo
58 posts
Matthieu
2 choses encore
A/ j'veux pas me la péter (lol) mais je crois crois qu'il y a une petite erreur dans le script de compet'
dans la partie
//
// Tri des elements, par region, vin puis année
//
rt.Sort("0-0;2-0;1-1");
cela génère un tri sur la REGION et le NOM
Pour generer un tri sur REGION et ANNEE, j ai modifié le script comme suit :
//
// Tri des elements, par region, vin puis année
//
rt.Sort("0-0;1-0;1-1");
Ais je bien fait??
B/ le 1-1 a quoi set il????
en rajoutant 7-0, j arrive a trier par btles
01/09/2008
Reply
Re : COMPLEMENT DU LIVRE DE CAVE
Administrateur
3099 posts
Bonsoir,
Pour supprimer la colonne prix en plus de mettre la déclaration de la colonne en commentaire il vous faut décaler les indices d'affectation qui suivent l'index de la colonne (6) et enfin supprimez la ligne suivante
row[6] = wine.BuyPrice.ToString("f");
Attention si vous supprimez cette colonne vous devez aussi enlever la ligne SousTotal qui se base sur les données du premier report.
Pour ce qui est de l'erreur ca n'en est pas une ;-) c'est precisé tri par région, nom et année soit rt.Sort("0-0;2-0;1-1");
Le 1-1 effectue un tri croissant sur les années.
Voili voilo
Matthieu
© 2006-2014
Matthieu DUCROCQ
- All rights reserved - Last update: january 2014 |
|
Support Open Cellar
|
Contact
|
About