Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
File is not open
Message
 
 
À
08/11/2009 06:01:30
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Versions des environnements
Visual FoxPro:
VFP 9 SP1
OS:
Windows XP
Network:
Windows XP
Database:
Visual FoxPro
Divers
Thread ID:
01433741
Message ID:
01433763
Vues:
47
Hi Mohammed,

I didn't read the whole code, but one thing caught my attention - why do you have CLOSE ALL inside SCAN/ENDSCAN ? Try to comment this line for now.

Also, you may want to open your table exclusively outside the SCAN/ENDSCAN also.

>hi all,
>
>i need help to fix this code , i get at the last line endscan error message file is not open
>
>SET SAFETY OFF
>SET TALK OFF
>SET STATUS OFF
>
>SELECT * FROM SOSO WHERE flg="1"        ;
>nofilter;
> INTO TABLE NEW1 
> 
> SELECT DISTINCT office,DEPARTMENT FROM new1 INTO TABLE mytable1
> USE mytable1
> 
> scan
>       m.office=office
>       m.DEPARTMENT=DEPARTMENT
>      thisform.text1.Value=m.office
> 
>
> 
> *********************************
>  thisform.text3.value=m.DEPARTMENT
>   COUNT TO THISFORM.TEXT2.VALUE
>   THISFORM.TEXT41.Value="NEW1"+".DBF"
>********************************
>CLOSE all
>
>Use (thisform.text41.value) Exclusive
>
>gnFieldcount = AFIELDS(gaMyArray)
>For nCount = 1 To gnFieldcount 
> 
>  If left(Upper(gaMyArray(nCount,1)),1)='Q' and gaMyArray(nCount,2)='C'&& begin with q and ather charcters
>
>    Wait "Converting "+gaMyArray(nCount,1) WINDOW nowait 
>    Alter table (thisform.text41.value) alter column (gaMyArray(nCount,1)) n(10,2)
>  EndIf 
>EndFor 
>Wait clear
>
>
>************************************
>CLOSE all
>#Define ANSWERCOUNT 6
>#Define QUESTIONCOUNT 3
>Local array aStruc[(ANSWERCOUNT+1)*2,4]
>Local ix,lnPair
>aStruc = 0
>aStruc[1,1] = 'Question'
>aStruc[1,2] = 'C'
>aStruc[1,3] = 5
>
>For lnPair=1 To ANSWERCOUNT
>      aStruc[m.lnPair*2,1] = 'CountOf'+Ltrim(Str(m.lnPair))
>      aStruc[m.lnPair*2,2] = 'I'
>      aStruc[m.lnPair*2,3] = 4
>
>      aStruc[m.lnPair*2+1,1] = 'PctOf'+Ltrim(Str(m.lnPair))
>      aStruc[m.lnPair*2+1,2] = 'B'
>      aStruc[m.lnPair*2+1,3] = 8
>      aStruc[m.lnPair*2+1,4] = 2
>Endfor
>
>aStruc[(ANSWERCOUNT+1)*2,1] = 'Total' 
>aStruc[(ANSWERCOUNT+1)*2,2] = 'I'
> aStruc[(ANSWERCOUNT+1)*2,3] = 4
>
>*Create Cursor answers >From Array aStruc
>SET SAFETY off
>Create table answers From Array aStruc
>lcText4Table =  ALLTRIM(thisform.text41.value)
>
>lcText4Alias = "Questions"
>
>IF NOT USED(lcText4Alias)
>   SELECT 0
>   USE (lcText4Table) ALIAS Questions
>  ENDIF
>
>For ix=1 To FCOUNT(lcText4Alias) 
>
>    IF UPPER(LEFT(FIELDS(ix,lcText4Alias),1)) == "Q" 
>       thisform.GetCounts(m.ix,lcText4Alias+'.'+FIELDS(ix))
>    ENDIF
>ENDFOR
> 
>Select answers
>
>
>*ALTER TABLE answers  ALTER COLUMN question Character(100) 
>ALTER TABLE answers  add COLUMN question1 Character(100) 
>ALTER TABLE answers  ALTER COLUMN question Character(10) 
>*************************************8
>cSelect = "SELECT [sum] AS Question"
>FOR cFlds = 2 TO FCOUNT("Answers")
>    cFldName = FIELDS(cFlds)
>    IF UPPER(LEFT(cFldName,7)) == "COUNTOF"
>      cSelect = cSelect + [,] + " SUM("+FIELDS(cFlds)+") AS "+FIELDS(cFlds)
>    ELSE
>      cSelect = cSelect + [,] + " 0 AS "+FIELDS(cFlds)
>    ENDIF
>NEXT
>cSelect = cSelect + " FROM Answers INTO ARRAY sumAnswers"
>
>&cSelect
>
>
>SUM CountOf1 TO nTest
>
>INSERT INTO Answers FROM ARRAY sumAnswers
>
>        *****************************************
>        CLOSE ALL
>        CLEAR
>        SET SAFETY OFF
>USE answers
>GO top
>replace question1 WITH "  íæÌÏ áÏí æÚí áãÝåæã ÇáãÚÑÝÉ ÇáÕÑíÍÉ                           " 
>SKIP
>replace question1 WITH " íæÌÏ áÏí æÚí áãÝåæã ÇáãÚÑÝÉ ÇáÖãäíÉ                         " 
>SKIP
>replace question1 WITH " ÇäÇ Úáì Úáã ÈÇáÊåÏíÏÇÊ ÇáÊí ÊæÇÌå ÇáãÚÑÝÉ Ýí ÇáÏÇÆÑÉ        " 
>SKIP
>replace question1 WITH "ÇÔÇÑß Ýí ÊÈÇÏá ÇáãÚÑÝÉ Èíä ÒãáÇÆí                              " 
>SKIP
>replace question1 WITH " ÇäÇ Úáì Úáã ÈãÍÊæíÇÊ ãæÞÚ ÇáãÚÑÝÉ  ÈÇáÏÇÆÑÉ                  " 
>SKIP
>replace question1 WITH "ÇäÇ Úáì Úáã ÈÃä ÇÏÇÑÉ ÇáãÚÑÝÉ ÊÒíÏ Ýí ÇáÇÑÊÞÇÁ ÈãÓÊæì ÇáÇÏÇÁ     " 
>SKIP
>replace question1 WITH "ÇäÇ Úáì Úáã  ÈÇåÏÇÝ  ÇÏÇÑÉ ÇáãÚÑÝÉ ÊÒíÏ Ýí ÇáÇÑÊÞÇÁ ÈãÓÊæì ÇáÇÏÇÁ" 
>SKIP
>replace question1 WITH LTRIM("ÇäÇ ÇÔÇÑß ÈäÔÑ ÇáãÚÑÝÉ ÈÇáÏÇÆÑÉ                        ") 
>SKIP
>replace question1 WITH "ÇäÇ Úáì ÇÓÊÚÏÇÏ áãÔÇÑßÉ ãÚÑÝÊí ÇáÖãäíÉ Èíäí æÈíä ÒãáÇÆí ÈÇáÏÇÆÑÉ " 
>SKIP
>replace question1 WITH "ÇÔÇÑß Ýí ÑÝÏ ãæÞÚ ÇáãÚÑÝÉ ÈÇáãÚÇÑÝ ÇáÖãäíÉ æÇáÕÑíÍÉ ÈÇÓÊãÑÇÑ    " 
>SKIP
>replace question1 WITH LTRIM("ÇáÍÇÓæÈ íÓÇÚÏ Ýí äÔÑ ÇáãÚÑÝÉ Ýí ÇáÏÇÆÑÉ                   " )
>SKIP
>replace question1 WITH "åá ÊÑÛÈ ÈÒíÇÏÉ ÓÇÚÇÊ ÇáÇäÊÑäÊ Ýí ÇáÏÇÆÑÉ   (äÚã)  Ãæ  (áÇ)  " 
>SKIP
>replace question1 WITH " Úáì äÔÑ ÇáãÚáæãÇÊ WorkFlow  åá íÓÇÚÏ  (äÚã)  Ãæ  (áÇ)  " 
>SKIP
>replace question1 WITH "ÇäÇ Úáì Úáã ÈãÕÇÏÑ  ÇáãÚÑÝÉ ÇáÖãäíÉ Ýí ÇáÏÇÆÑÉ (äÚã)  Ãæ  (áÇ) " 
>SKIP
>replace question1 WITH "ÇäÇ Úáì ÏÑÇíÉ ÈÃãÇßä ÇáãÚÑÝÉ ÇáÕÑíÍÉ Ýí ÇáÏÇÆÑÉ   (äÚã)  Ãæ  (áÇ)" 
>SKIP
>replace question1 WITH "åá ÇáãÚÑÝÉ ÇáÖãäíÉ ÊÑÝÚ ÇÏÇÄß Ýí ÇáÚãá   (äÚã)  Ãæ  (áÇ)" 
>SKIP
>replace question1 WITH "åá ÊÚÊÞÏ Çä ÇáÏÇÆÑÉ æÝÑÊ ÇáíÇÊ áÊÈÇÏá ÇáãÚáæãÇÊ (äÚã)  Ãæ  (áÇ)" 
>SKIP
>replace question1 WITH "ÇáãÌãæÚ" 
>
>
>CLOSE all
>
>USE answers excl
>ALTER table answers ADD COLUMN no n(3)
>ALTER table answers drop COLUMN no 
>ALTER table answers ADD COLUMN no n(3)
>m.i=0 
>FOR m.i=i TO 17
>REPLACE no WITH m.i
>skip
>endfor
>
>
>
>
>CLOSE ALL
>USE answers
>
>SELECT  no, question,question1 ,'count',countof1,countof2, countof3,countof4,countof5;
> FROM answers  ;
>UNION ALL;
>SELECT  no,question,question1,'persentage',pctof1,pctof2, pctof3,pctof4,pctof5;
>FROM answers INTO CURSOR mucur  READWRITE  ORDER BY no    
>
>
>SCAN
>replace question WITH "ÇáÊßÑÇÑ"
>SKIP
>replace question1 WITH ""
>replace question WITH "%"
>  
>replace  countof1 WITH ROUND(countof1,2) 
>replace  countof2 WITH ROUND(countof2,2)
>replace  countof3 WITH ROUND(countof3,2)
>replace  countof4 WITH ROUND(countof4,2)
>replace  countof5 WITH ROUND(countof5,2)
>endscan
> 
>endscan&& error message file is not open
>
>
>
>
>thanks
If it's not broken, fix it until it is.


My Blog
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform