Search  
Friday, February 10, 2012 ..:: Forum ::.. Register  Login
 Forum Minimize
Pentru a putea posta mesaje trebuie să vă înregistraţi.
Notă: Mesajele cu conţinut jignitor sau ilegal (inclusiv cereri de soft piratat) nu sunt acceptate şi vor fi şterse imediat .

Pentru a primi raspunsuri rapide si corecte, scrieti in mesaj ce intentionati sa faceti, ce mesaj de eroare primiti, in ce context si in urma caror actiuni. De asemenea, mentionati versiunea de FoxPro in care lucrati!
Dacă nu specificați versiunea, se consideră VFP 9.0 SP2.

SearchForum Home
  Visual FoxPro  Rapoarte si generatoare de rapoarte  implementare co...
 implementare contract in raport
 
 10/5/2009 11:48:00 AM
User is offlinepd
165 posts
5th


implementare contract in raport
 (N/A)
Trebuie sa implementez un contract de 5 pagini intr-o aplicatie. Textul l-am primit in MS Word.
Cum as putea implementa in aplicatie (intr-un raport) textul din document?
 10/5/2009 1:09:35 PM
User is offlineDaniel Buduru
2141 posts
1st




Re: implementare contract in raport
 (N/A) Modified By Daniel Buduru  on 10/5/2009 12:16:17 PM)
Poti salva documentul word in format rtf.
Aici ai un exemplu de cod pentru a imprima texul rtf intr-un raport:

How to apply rich text effects in Visual FoxPro reports

iar aici o alta varianta:
http://www.universalthread.com/Report.aspx?Session=7156442F54464464636A493D2068704B4172385A47463144685A75467752317448722B35547376726E5953436D


Daniel Buduru
 2/18/2010 6:11:36 PM
User is offlinegillmifus
53 posts


Re: implementare contract in raport
 (N/A) Modified By gillmifus  on 2/18/2010 6:49:54 PM)
Am si eu un contract in care schimb doar citeva date, cele ale beneficiarului, pe care le iau dintr-un .dbf. Am dat ctrl+c,v din word si am scris intr-un prg continutul intre SET TEXTMERGE TO contract.txt
SET TEXTMERGE ON
\contract, etc

Problema este ca il aliniaza cam aiurea si nu am nici margine de indosariere, as vrea sa dau si un bold, ceva, font,etc. Am dat tab dar nu iese super, problema nu ma deranjeaza f.tare, trebuie sa iasa totusi cit de cit, dar f.repede si nimic complicat.
Un sfat, sugestii, cit mai simplu si eficient.
Gill (vfp.7)
 2/18/2010 9:06:56 PM
User is offlineDaniel Buduru
2141 posts
1st




Re: implementare contract in raport
 (N/A) Modified By Daniel Buduru  on 2/18/2010 9:17:23 PM)
Tehnoredacteaza mai intai contractul. Daca optezi pentru varianta cu Richtext, il poti edita in word si il salvezi in format rtf.
Mai ai o optiune, format HTML. In acest caz, il editezi intr-un editor HTML. Cel mai accesibil e OutlookExpress. Compui un mesaj nou, ii pui fonturile si ce mai doresti. Cand esti gata, selectezi tabul Source - e in partea de jos a ferestrei - si vei avea in fereastra codul html. Il iei cu copy/paste intr-un camp memo sau il salvezi in fisier text.
In oricare din variante, pune in text un placeholder (ceva care tine locul) pentru datele beneficiarului. De exemplu, in loc de un beneficiar anume scrii **SOCIETATE BENEFICIAR**, **ADRESA BENEFICIAR** si tot asa.
Asta va fi macheta.
Cand vrei sa tiparesti, copiezi fisierul sau campul memo intr-un string, apoi faci inlocuirile:
lcContract=FILETOSTR('fisiercontract.extensie')
lcContract=STRTRAN(lcContract,'**SOCIETATE BEBEFICIAR**', numele_beneficiarului)
lcContract=STRTRAN(lcContract,'**ADRESA BENEFICIAR**', adresa_beneficiarului)
si tot asa.
Poti  pune <<numele_beneficiarului>> in textul contractului, in loc de **SOCIETATE BENEFICIAR**
In acest caz, inlocuirea o faci cu TEXTMERGE()
lcContract=TEXTMERGE(lcContract)
Apoi il tiparesti in varianta aleasa - rtf sau HTML.



Daniel Buduru
 2/18/2010 9:47:49 PM
User is offlinegillmifus
53 posts


Re: implementare contract in raport
 (N/A)
Cum listez un fisier.txt direct din .prg, parca era "run print contract.txt" ?
Am rezolvat simplu cu set text...a iesit ok. Mai am de lucrat la salvarea "fisier.txt"
 4/1/2011 6:27:15 PM
User is offlinegillmifus
53 posts


Re: implementare contract in raport
 (N/A) Modified By gillmifus  on 4/1/2011 5:32:31 PM)
Am reusit sa scriu si in format .rtf si html.
problema e ca nu imi dau seama cum sa scriu codul in continuare.
merge asa cum am spus cu SET TEXTMERGE TO fis. NOSHOW SET TEXTMERGE ON \, ... etc., dar nu sunt multumit de forma.
Cred ca daca se pastreaza forma din .rtf sau html ar fi ok.
Nu am experienta cum sa le asez.... Daca are cineva 2 secunde timp... (trebuie sa scriu 400 de contracte, am .dbf-ul si .rtf)
Multumesc anticipat.
gill
 4/1/2011 8:36:25 PM
User is offlineDaniel Buduru
2141 posts
1st




Re: implementare contract in raport
 (N/A)
Am atasat un exemplu foarte sumar. Se poate extinde functionalitatea, poti sa editezi contractul si sa-l salvezi in tabela, etc. Poti avea un dialog de selectie imprimanta, se pot seta marginile, identarea si restul ...

Daniel Buduru
Contract.zip 
 4/3/2011 9:38:49 PM
User is offlinegillmifus
53 posts


Re: implementare contract in raport
 (N/A)
Multumesc furmos pentru timpul acordat. Este ok. Ma gindesc cum sa il pacalesc sa nu imi arate form-ul si sa listeze direct
Mai fac sapaturi.
Inca o data multumesc
gill
 4/4/2011 8:56:49 AM
User is offlineDaniel Buduru
2141 posts
1st




Re: implementare contract in raport
 (N/A) Modified By Daniel Buduru  on 4/4/2011 8:58:41 AM)
Poti instantia un obiect richtextcontrol fara sa fie inclus intr-un form si fara sa fie vizibil.
Pentru schimbarea culorii textului ai doua variante: schimbi culoarea in richtextcontrol sau schimbi culoarea direct in textul rtf.
Pentru a schimba culoarea in textul rtf, trebuie sa cauti tagul {\colortbl si sa inlocuiesti valorile. Tagul acest poate lipsi, daca textul are culoarea implicita. In acest caz, trebuie inserat.

Wordpad genereaza un fisier RTF mult mai mic decat cel generat de MS Word. Daca folosesti MS Word pentru macheta, deschide fisierul in Wordpad (e in accesorii, face parte din aplicatiile distribuite cu sistemul de operare) si salveaza-l din nou cu Save As in format RTF - dimensiunea poate fi si de 10 ori mai mica.

E bine sa tii in tabela de contracte textul fiecarui contract asa cum a fost tiparit. In timp, macheta contractului se poate schimba, se poate ca forma si clauzele machetei sa nu mai corespunda cu contractul tiparit si semnat.

Un exemplu de tiparire fara sa instantiezi un form (presupunem ca textul rtf se gaseste intr-un camp memo al tabelei cu contracte) :

lnColor1=RGB(0,0,128) &&culoare exemplar 1
lnColor2=RGB(240,0,0) &&culoare exemplar 2

ortf=CREATEOBJECT('richtext.richtextctrl.1')

DECLARE INTEGER CreateDC IN Win32Api STRING, STRING, INTEGER, INTEGER
DECLARE INTEGER DeleteDC IN Win32Api INTEGER
cPrinter = Set("PRINTER",3) &&imprimanta implicita. Poti activa un dialog de selectie al imprimantei: cPrinter=GETPRINTER()
hDC = CreateDC("WINSPOOL",cPrinter,0,0)


USE contracte IN 0
Select contracte
Scan all
ortf.TextRTF=contracte.contract
ortf.SelStart=0
ortf.SelLength=len(contracte.contract)

oRTF.SelColor=lnColor1
oRTF.SelPrint(hdc)

oRTF.SelColor=lnColor2
oRTF.SelPrint(hdc)

End scan
DeleteDC(hdc)


Daniel Buduru
 4/19/2011 1:09:12 AM
User is offlinegillmifus
53 posts


Re: implementare contract in raport
 (N/A)
Scuze pentru ca raspund asa tirziu. Am fost presat de timp si "stresat" de imprimanta, am listat 5 ore.
Va multumesc mult pentru raspunsuri. O sa studiez, sper in liniste, ceea ce ati scris. Se pare ca voi mai avea de listat to asa niste contracte si atunci voi incerca
sa gasesc solutia optima pentru mine. Pot trec de la nivelul de socotioare la mai mult...
Cu stima si multumiri, gill
  Visual FoxPro  Rapoarte si generatoare de rapoarte  implementare co...

Search  Forum Home         

 Google Ads Minimize

    

Copyright 2002-2010 Profox   Terms Of Use  Privacy Statement