Page 1 sur 2

Amélioration de FactOOor

Publié : 02 août 2006 14:59
par c-stefan
Le 02/08/06
  • Incrémentation du numéro en automatique suivant le mois ! (le numéro du mois ne changeait pas )

le 14/08/06

Publié : 14 août 2006 19:59
par c-stefan
le 14/08/06
  • Changement du montant de la tva facilité (sur la page gestion stat) pour une utilisation dans d'autres pays.
    Ajout d'une vue pour les devis en cours (sur la page gestion stat).
    Changement sur le total du C-A en H-T (au lieu de TTc avant)
    Connexion automatique. Vous n'avez plus besoin d'enregistrer la base de données

Publié : 13 nov. 2006 16:41
par c-stefan
A ce jour, il y a eu plus 10 000 téléchargements de FactOOor, en à peine 6 mois.

Calc_macros inserer ligne, rechercher texte, imprimer une zo

Publié : 02 déc. 2006 10:18
par Nicolas
Hello
Ci joint le code de quelques macros que j ai rajouté dans factoor, on pourrait les placer ailleurs dans le forum, mais comme celle ci s'applique à factoor...

1/ Insérer une ligne, fonction déclencher par un bouton
Dans la dèrnière ligne du tableau j ai écrit le signe "++" en tout petit, je le recherche et insère ma nouvelle ligne juste avant

Code : Tout sélectionner

Global maLigne as Integer 'Variable utilis&e un peu partout :-)
Option Explicit

Sub InsererLigne()
'Insérer une ligne avant la fin du tableau et recopie des formules dans la plage de destination
dim monDoc as Object, maFeuille as Object
dim maPlage as Object, maCellule as Object

	monDoc = ThisComponent      'le classeur courant
	maFeuille = monDoc.Sheets.getByName("Facture")   'Accès à la feuille facture
	
	RechercheTexte'Recherche la position du signe ++ dans le tableau
   
	maFeuille.Rows.insertByIndex(maLigne, 1)   'Insertion d'une ligne avant celle trouvée
	maPlage = maFeuille.getCellRangeByName("D29:K29") 'Plage à Copier, 1ère ligne masquée dans le tableau
   	maCellule = maFeuille.getCellByPosition(3, maLigne)'Cellule de destination
    maFeuille.copyrange(maCellule.cellAddress, maPlage.rangeAddress)'Copie de la formule
    monDoc.currentController.Select(maCellule)'place le curseur sur la cellule de destination
    
    RechercheTexte'Recherche à nouveau le signe ++ pour attribuer la nouvelle position à la variable maLigne
End Sub
2/ macros rechercher un texte dans un tableur

Code : Tout sélectionner

Option Explicit

Sub RechercheTexte  'Recherche le signe ++ pour ecrire dans la variable maLigne sa position dans la feuille calc

dim laRecherche as Object, leTrouve as Object, maCellule as Object, maFeuille as Object, monDoc as Object

	monDoc = ThisComponent      'ThisComponent représente le classeur courant
	maFeuille = monDoc.Sheets.getByName("Facture")   'Accès à la feuille facture
	laRecherche = maFeuille.createSearchDescriptor      'Création d'un outil de recherche sur cette feuille
	
   	with laRecherche         'Définition des critères de recherche
		.SearchString = "++"
		.SearchByRow = true
		.SearchWords = false
	end with
	
	leTrouve = maFeuille.findFirst(laRecherche) 'Lancement de la recherche
	
	if isnull(leTrouve) then
		msgbox "La recherche a échoué, il faut écrire ++ dans la dérnière ligne du tableau"
	else
	   	maLigne = leTrouve.CellAddress.Row
    '	MsgBox("Valeur de la ligne ou se trouve le signe ++..." & chr(13) & maLigne & chr(13), OK)
    end if
End Sub
3/Réinitialiser la facture, macros déclencher lors de la validation de la facture

Code : Tout sélectionner

Sub ReinitialiserFacture

dim monDoc as Object, maFeuille as Object
dim maZoneA as Object, maZoneB as Object
dim gomme as Long
dim maCellule as Object

	monDoc = ThisComponent      'ThisComponent représente le classeur courant
	maFeuille = monDoc.Sheets.getByName("Facture")   'Accès à la feuille facture

	If maLigne = 43 Then
		'MsgBox("Pas de ligne à supprimer",OK)
	Else	
		RechercheTexte
		maFeuille.Rows.removeByIndex(42,maLigne-43)
		RechercheTexte   
	End If
	
	Rem efface le contenu des cellules avant la ligne 42 jusqu à la ligne 29
	maZoneA = maFeuille.getCellRangeByName("D30:H43")'Zone de cellule ou se trouve les désignation, etc...
	maZoneB = maFeuille.getCellRangeByName("H14:H18")'efface le nom du destinataire
	
	gomme = com.sun.star.sheet.CellFlags.STRING + com.sun.star.sheet.CellFlags.VALUE
	
	maZoneA.clearContents(gomme)
	maZoneB.clearContents(gomme)
	
   	maCellule = maFeuille.getCellRangeByName("D31")'Cellule de destination
	monDoc.currentController.Select(maCellule)'place le curseur sur la cellule de destination
End Sub
3/MAcros imprimer 2 ex de ma facture,macros déclencher lors de la validation de la facture

Code : Tout sélectionner

Sub Imprime

dim ZoneImpression(0) as new com.sun.star.table.CellRangeAddress
dim monDoc as Object, document as Object
dim maFeuille as Object, maZone as Object, maZone1 as Object

	RechercheTexte
	monDoc = ThisComponent
	maFeuille = monDoc.Sheets.getByName("Facture")
			
	'Définition d'une Zone d'impression
	ZoneImpression(0).sheet = 0 '1ere feuille
	ZoneImpression(0).startcolumn = 2 'Colonne C
	ZoneImpression(0).startrow = 3 ' avant Ligne 4
	ZoneImpression(0).endcolumn = 9 ' Colonne J
	ZoneImpression(0).endrow = maLigne+12 ' 
	maFeuille.SetPrintAreas(ZoneImpression()) 
	
	'Définition de l'entete de chaque page
	maZone = maFeuille.getCellRangeByName("C4:J28")
	maFeuille.TitleColumns = maZone.RangeAddress
	maFeuille.PrintTitleColumns = True
	maFeuille.TitleRows = maZone.RangeAddress
	maFeuille.PrintTitleRows = True
	
	'Définition des paramètres d'imprimante
Dim args1(0) as New com.sun.star.beans.PropertyValue
	args1(0).Name = "Name"
	args1(0).Value = "hp deskjet 840c series"
'	args1(1).Name = "PaperFormat"
'	args1(1).Value = com.sun.star.view.PaperFormat.A4
'	args1(2).Name = "PaperOrientation"
'	args1(2).Value = com.sun.star.view.PaperOrientation.PORTRAIT
'	args1(3).Name = "Sort"	'Sort; set to TRUE to print sorted copies. This is useful only if CopyCount is
							'greater than 2. With Sort set to TRUE, the copies are printed in order.
							'These properties apply to the print job. There is another set of properties used to
							'configure the printer itself.
'	args1(3).Value = FALSE
   	monDoc.setPrinter(args1()) 
	
'Définition du nb de copies, assemblage des impressions
dim args3(0) as new com.sun.star.beans.PropertyValue
	args3(0).Name = "CopyCount"'"Copies"
	args3(0).Value = 2
	'args3(1).Name = "Selection"
	'args3(1).Value = false
'	args3(1).Name = "Collate"
'	args3(1).Value = true
	
	monDoc.Print(args3())
End Sub
4/ Export la facture dans un nouveau fichier calc, j ai utilisé l'enregistreur de macros, cette macros n'est pas finalisée, puisque l'ulisateur doit coller le nom de fichier lors de l'ouverture de la fenetre enregistrer sous, je la donne quand meme ca peut donner des idées à chacun.
macros déclencher lors de la validation de la facture

Code : Tout sélectionner

Sub NouveauDocCalc

Dim monDoc as Object
Dim dispatcher as Object
Dim args1(0) as new com.sun.star.beans.PropertyValue
Dim args2(5) as new com.sun.star.beans.PropertyValue

	rem ----------------------------------------------------------------------
	rem get access to the document
	monDoc = ThisComponent.CurrentController.Frame
	dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

	rem ----------------------------------------------------------------------
	args1(0).Name = "ToPoint"'Position de la plage de copie
	args1(0).Value = "$C$4:$J$150"

	dispatcher.executeDispatch(monDoc, ".uno:GoToCell", "", 0, args1())

	rem ----------------------------------------------------------------------
	dispatcher.executeDispatch(monDoc, ".uno:Copy", "", 0, Array())

	rem---------------------------------------------------------------------- Ouvre un nouveau doc calc
	monDoc = StarDesktop.loadComponentFromURL("private:factory/scalc", "_blank", 0, Array())
	monDoc = StarDesktop.CurrentFrame

	args1(0).Name = "ToPoint"'Position de la cellule de destination
	args1(0).Value = "$C$4"
	dispatcher.executeDispatch(monDoc, ".uno:GoToCell", "", 0, args1())

	rem ---------------------------------------------------------------------- Collage spécial
	args2(0).Name = "Flags"
	args2(0).Value = "SVDNT"
	args2(1).Name = "FormulaCommand"
	args2(1).Value = 0
	args2(2).Name = "SkipEmptyCells"
	args2(2).Value = false
	args2(3).Name = "Transpose"
	args2(3).Value = false
	args2(4).Name = "AsLink"
	args2(4).Value = false
	args2(5).Name = "MoveMode"
	args2(5).Value = 4
	dispatcher.executeDispatch(monDoc, ".uno:InsertContents", "", 0, args2())

	rem ----------------------------------------------------------------------
	rem get access to the document
	monDoc   = ThisComponent.CurrentController.Frame
	dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
	rem ----------------------------------------------------------------------
	
dim args3(0) as new com.sun.star.beans.PropertyValue
	args3(0).Name = "ToPoint"
	args3(0).Value = "$G$25"
	dispatcher.executeDispatch(monDoc, ".uno:GoToCell", "", 0, args3())
	dispatcher.executeDispatch(monDoc, ".uno:Copy", "", 0, Array())

rem ----------------------------------------------------------------------
dim args4(0) as new com.sun.star.beans.PropertyValue
	args4(0).Name = "SelectionOnly"
	args4(0).Value = true
	monDoc = StarDesktop.CurrentFrame
	dispatcher.executeDispatch(monDoc, ".uno:SaveAs", "", 0, args4())
'Je voulais réaliser la sauvegarde sans intervention de l'utilisateur au
'moment de l'ouverture de la boite de dial Enregister sous, mais je coince
	monDoc.close(True)
End Sub
5/ j ai aussi rajouté une macro pour ouvrir un doc writer qui doit me genérer des envelopppes à partir de la table client, mais ca ne fonctionne pas, du moins pas encore :-)

6/je suis entrain de faire une macros pour positionner le curseur sur une ligne du formulaire factAttente, en fonction d'un mot rentrer par l'utilisateur dans une cellule, en gros ca ressemble à la fonction rechercherTexte, mais dans un formulaire, je cherche encore des pistes

Voilà ci joint ma modeste contribution, je précise que je ne suis pas informaticien, j ai pas mal cherché les réponses dans ce forum, le livre de Bernard MArcelly, les différents HowTo, formation Express, et enfin le plus gros du boulot était déjà fait par c-stefan, donc, merci pour ça.

@+
nicolas.

Publié : 28 déc. 2006 15:28
par c-stefan
Nouvelle version du 28 Déc 2006

Avec au menu comme changements :
  • Numérotation, qui commence à 01 au lieu de 10
    Code postal en valeur 10 au lieu de 5
    et un champ pays

Publié : 03 févr. 2007 18:13
par c-stefan
Une nouvelle version qui corrige le problème de certaines versions avec la 2.1, à l'enregistrement du paiement. Dans certains cas ! (version de OpenOffice intégrant Java)

Publié : 19 févr. 2007 20:45
par c-stefan
Bonjour,

PrévisiOOo est en téléchargement, à la page ressources

Ce logiciel est sous licence GPL. Le seul support de prévisiOOo c'est ce forum.

test
Nouveau Document texte.rtf

Publié : 21 févr. 2007 19:15
par c-stefan
Bonjour,

Il y a maintenant une version de FactOOor avec éco-participation.

Publié : 11 juin 2007 13:01
par ashasz
Bonjour,

Je suis actuellement en phase de montage de projet pour une création d'entreprise (Entreprise Individuelle).
PrevisiOOo m'interesse donc beaucoup.

Je suis sous Kubuntu (7.04).

Il semble y avoir un problème d'encodage de caractère dans l'archive téléchargeable de PrevisiOOo, le fichier Calc apparait dans l'archive avec des caractères étranges et du coup impossible de le décompresser.

Serait il possible de corriger ce petit "bug" ?

Merci d'avance, et encore bravo pour votre boulot !

Publié : 18 juin 2007 19:50
par c-stefan
il y a 1 an maintenant (le 25 juin 2006) que FactOOor a été mis en téléchargement.
Il y a eu plus de 30 000 téléchargements depuis.

Publié : 18 févr. 2008 13:30
par c-stefan
Bonjour,

Une nouvelle version de FactOOor (pour fin de semaine) avec une interface légèrement repensé.

Améliorations :

- Ajout d'une boîte de dialogue pour écrire, les informations sur la facture.
- Ajout de lignes supplémentaires.
- Ajout d'une boîte de dialogue pour gérer la TVA.
- Nouvelle relation entre les tables TClients Et TFacture.
- Ajout d'un champ "Référence" dans la table produit et sur la facture
- Ajout d'un contrôle de table (GRID ) sur "factures encaissés" avec un contrôle pour avoir le "total" et le nom du client.
- Ajout d'un contrôle pour avoir le "total" sur devis
- liste valide en G2 pour choix "siret" ou "siren"

j'attends, vos commentaires et/ou vos demandes d'améliorations.

Image

Image

et pour la Feuille "devis et Factures"

Image

Tuto pour première installation et utilisation de Factoor ?

Publié : 26 févr. 2008 16:16
par xavcambuse
Bonjour c-stefan,

D'abord merci pour factoor qui a l'air très pratique et simple d'utilisation au moins à prime abord.

Je suis tout novice et j'ai quelques ennuis avec mes débuts sur factoor basique (pas le pro).
Désolé si c pas le bon fil pour poser ces questions mais j'ai pas trouvé plus proche comme discussion.

Je suis sous vista et sous open office 2.3

1-j'ai réussi a lier le fichier base et le fichier calc donc les infos clients et produits apparaissent bien à droite du document.

2-mais comment les faire passer du menu déroulant aux zones "A l'attention de " et "intitulé" ? je sais c tres bête mais je vois pas (j'ai double cliqué, copié collé...) rien à faire, rien ne se passe parcontre le bouton don de 2 euros marche très bien ;-).

3-les boutons "valider" "ouvrir basefactoor" et aperçu sont complètement inopérant !

Ou est le tuto s'il vous plait ???

Publié : 27 févr. 2008 09:08
par cris59
Dans l'archive que tu as téléchargée il y a un fichier PDF d'aide...

Client : tu cliques dans la table des clients sur le client qui te conviens

Produits :
tu sélectionnes une ligne de la zone intitulé
tu cliques sur le produit dans la liste des produits

La validation ne se fait que s'il y a un client et que le total de la facture est supérieur à 0

cris59

Publié : 01 avr. 2008 20:55
par ngodard
Bonjour,
impossible de faire apparaitre les produits dans la partie intitulée. J'ai bien suivi toutes les instructions, relu les post et toujours rien !!!
Y'a un truc, une procédure particulière ?

Publié : 02 avr. 2008 04:10
par cris59
Bonjour,
cris59 a écrit :Produits :
tu sélectionnes une ligne de la zone intitulé
tu cliques sur le produit dans la liste des produits
les lignes de la zone intitulé : lignes 25 à 36, colonne D
tu cliques juste sur une de ces cellules pour l'activer et ensuite tu cliques sur l'un des produits de ta liste


cris59

Publié : 30 avr. 2008 08:26
par 20centimes1
Bonjour,

quand sortira cette nouvelle version ?

Merci d'avance!

Publié : 30 avr. 2008 12:25
par c-stefan
20centimes1 a écrit :Bonjour,

quand sortira cette nouvelle version ?

Merci d'avance!
Bonjour,

Je vais surement avoir un peu de temps. Pour finir, vers la fin du mois de mai.

Re: Amélioration de FactOOor & PrévisiOOo.

Publié : 13 mai 2008 09:47
par c-stefan
la nouvelle version sera en téléchargement dans l'après-midi.


Améliorations :

- Ajout d'une boîte de dialogue pour écrire, les informations sur la facture.
- Ajout de lignes supplémentaires.
- Ajout d'une boîte de dialogue pour gérer la TVA.
- Nouvelle relation entre les tables TClients Et TFacture.
- Ajout d'un champ "Référence" dans la table produit et sur la facture
- Ajout d'un contrôle de table (GRID ) sur "factures encaissés" avec un contrôle pour avoir le "total" et le nom du client.
- Ajout d'un contrôle pour avoir le "total" sur devis
- liste valide en G2 pour choix "siret" ou "siren"

Re: Amélioration de FactOOor & PrévisiOOo.

Publié : 13 mai 2008 11:34
par c-stefan
La nouvelle version n'est pas compatible avec l'ancienne base de données... il faut faire quelques manip pour que cela fonctionne.

- Nouvelle relation entre les tables TClients Et TFacture.
- Ajout d'un champ "Référence" dans la table produit et sur la facture

Re: Amélioration de FactOOor & PrévisiOOo.

Publié : 13 mai 2008 12:01
par 20centimes1
Un très très grand merci!

J'avoue ne pas avoir encore utilisé la nouvelle version, mais je me doute qu'elle est encore plus pratique que l'ancienne ! :super:

Re: Amélioration de FactOOor & PrévisiOOo.

Publié : 30 mai 2008 08:55
par chlegoff
Bonjour,

Comment fait on pour passer de la version précédente à celle-ci tout en sauvegardant ses données ? je précise que j'ai bien essayé de modifier les relations entre les tables TClients Et TFacture mais Ooo ne veut pas. J'ai fait également des recherches sur le forum sans rien trouver.

Je tourne avec Kubuntu 7.04 et OpenOffice.org 2.4

Merci d'avance pour votre indulgence ! :wink:

Re: Amélioration de FactOOor & PrévisiOOo.

Publié : 31 mai 2008 06:57
par Factooor
chlegoff a écrit :Bonjour,

Comment fait on pour passer de la version précédente à celle-ci tout en sauvegardant ses données ? je précise que j'ai bien essayé de modifier les relations entre les tables TClients Et TFacture mais Ooo ne veut pas. J'ai fait également des recherches sur le forum sans rien trouver.

Je tourne avec Kubuntu 7.04 et OpenOffice.org 2.4

Merci d'avance pour votre indulgence ! :wink:
Bonjour,

Vous avez la même chose que moi ?
tRela.png

Re: Amélioration de FactOOor & PrévisiOOo.

Publié : 31 mai 2008 14:03
par chlegoff
Bonjour,

J'ai bien essayé de créer cette relation mais rien n'y fait.

Re: Amélioration de FactOOor & PrévisiOOo.

Publié : 31 mai 2008 15:30
par c-stefan
chlegoff a écrit :Bonjour,

J'ai bien essayé de créer cette relation mais rien n'y fait.
Avec vôtre image, je ne vois pas. Si vous avez créé le champ RefClient ?

Re: Amélioration de FactOOor & PrévisiOOo.

Publié : 01 juin 2008 07:22
par chlegoff
Voici :

Re: Amélioration de FactOOor & PrévisiOOo.

Publié : 01 juin 2008 10:00
par Dredd
chlegoff a écrit :OpenOffice.org 2.3 GNULinux Kubuntu
C'est la version des dépôts que tu utilises ? Perso, je l'ai laissé tomber au profit de l'officielle plus stable surtout avec Base

Re: Amélioration de FactOOor & PrévisiOOo.

Publié : 01 juin 2008 12:24
par chlegoff
Non non, j'utilise bien la version officielle et pas celle des dépôts.

Re: Amélioration de FactOOor & PrévisiOOo.

Publié : 04 juil. 2008 06:08
par Vektrox
Bonjour

Très bien cette nouvelle version sauf que rien ne fonctionne, tous les boutons sont inactifs ? sauf le don de 2 euro et le contact factoor pro :?: :?:

Si c'est pas volontaire cela y ressemble :wink:

Re: Amélioration de FactOOor & PrévisiOOo.

Publié : 04 juil. 2008 07:20
par Factooor
Vektrox a écrit :Bonjour

Très bien cette nouvelle version sauf que rien ne fonctionne, tous les boutons sont inactifs ? sauf le don de 2 euro et le contact factoor pro :?: :?:

Si c'est pas volontaire cela y ressemble :wink:
Bonjour,

N'étant pas toujours diplomate (surtout le matin:) ) j'avoue que ce genre de propos me g****f** un peu, voir même beaucoup...
Donc, aucune de réponse de ma part.

Re: Amélioration de FactOOor & PrévisiOOo.

Publié : 04 juil. 2008 07:43
par Vektrox
Tout est fonctionnelle à présent, la version OOo aqua pour mac encore en beta ne voulais pas de cette version de Factoor, alors que NeoOffice fonctionnait parfaitement.
Cette version est plutôt bien abouti et la colonne Ref produit est-ce que j'attendais depuis longtemps.

Par contre impossible de faire fonctionner l'ancienne base avec cette version même après avoir lu les explications sur le forum.

Deux petites questions :

1- comment fait on pour mettre "toutes" les lignes en noire ?
J'ai modifier le RGB dans les macros mais il me reste des reliquats de lignes bleues à l'endroit du (montant HT) et (reste a payer)

2- le fond dégradé orangé de la ligne désignation etc. comment est il fait ??


Bravo pour cette version