یک مشکل در تبدیل به فایل SQL:
1)بجای ' از " استفاده شده.
2)در جملات فارسی جای " اشتباه است.
همانطور که میبینید بخشی از کد زیر نا مشخص است لطف کرده و آن بخشها را شرح دهید.
تشکر
FUNCTION CODE_Iran
Parameter Tmp_new_new
st2 = 'ُ¨ھ÷î“ں›َê—¬،•ی 4;™ژً•'
st3 = 'üô§©ِی’ڑٌé–« 60;”ë­œکü'
* st2 = 'ُ¨ھ÷î“ں›َê—¬،•ی 4;™ژًûنè•'
* st3 = 'üô§©ِی’ڑٌé–« 60;”ë­œکüïùله”œ'
st4 = 'üô§©ِی’ڑٌé–« 60;”ë­œک‘ّگ¢¤¥£& #166;وهâلâوùئ '
st5 = 'èنûçمْهلùوâù ;'
st6 = 'ûُ¨ھ÷î“ں›َê—¬،• ی®™ژà¯èن'
erab = 'ًٌٍَُِّْ' && for erase erab
ramz1 = 'بسمهتعالیرنجفقخوضصکتفیحذ شد،ئزثطظغء"آگپژچ؟()' + erab
ramz2 = '“¨ُû—نگَ¤÷›êی،ّ& #174;¬î—êں£ئھ¢ٹژ¥™ ¯àèڈ-چً•¦Œ)('
tmp_new = ''
tmp_old = Tmp_new_new
DO WHILE .T.
ata1 = AT(CHR(32),tmp_old)
IF ata1=0
IF BETWEEN(ASC(LEFT(ALLTRIM(tmp_old),1)),48,57) .and. BETWEEN(ASC(right(ALLTRIM(tmp_old),1)),48,57)
tmp_old = fsis(tmp_old)
ENDIF
tmp_new = tmp_new + tmp_old
EXIT
ENDIF
_tmp_old = SUBSTR(tmp_old,1,ata1)
tmp_old = STUFF(tmp_old,1,ata1,'')
IF BETWEEN(ASC(LEFT(ALLTRIM(_tmp_old),1)),48,57) .and. BETWEEN(ASC(right(ALLTRIM(_tmp_old),1)),48,57)
_tmp_old = fsis(_tmp_old) + ' '
ENDIF
tmp_new = tmp_new + _tmp_old
ENDDO
tmp_new = ' ' + Fsis(Chrtran(tmp_new, ramz1, ramz2))
tmp_new = traz_1(tmp_new)
tmp_new = stuff(tmp_new,1,1,'')
Return tmp_new
*
Function traz_1
Parameter trz
trz = Strtran(trz, 'أ', 'ئگ')
trz = Strtran(trz, 'إ', 'أگ')
trz = Strtran(trz, 'ؤ', 'ئّ')
trz = Strtran(trz, 'گَ', 'ٍ')
m_alf = '°'
Do Whil (m_alf$trz)
n1 = At(m_alf, trz)
a2 = Substr(trz, n1-1, 1)
If (a2$'.ٹ ')
trz = Stuff(trz, n1, 1, 'A')
Else
trz = Stuff(trz, n1, 1, '')
Endif
If addam
Exit
Endif
Enddo
trz = Chrtran(trz, 'A', m_alf)
For i = 1 To Len(st2)
m_st = Substr(st2, i, 1)
Do Whil (m_st$trz)
n1 = At(m_st, trz)
a2 = Substr(trz, n1-1, 1)
If (a2$'.ٹ ')
trz = Stuff(trz, n1, 1, Substr(st3, i, 1))
Else
trz = Stuff(trz, n1, 1, 'A')
Endif
If addam
Exit
Endif
Enddo
trz = Chrtran(trz, 'A', m_st)
Endfor
m_alf = 'گ'
Do Whil (m_alf$trz)
n1 = At(m_alf, trz)
a2 = Substr(trz, n1+1, 1)
If (a2$st6)
trz = Stuff(trz, n1, 1, '‘')
Else
trz = Stuff(trz, n1, 1, 'A')
Endif
If addam
Exit
Endif
Enddo
trz = Chrtran(trz, 'A', m_alf)
If addam
Return trz
Endif
m_ya = 'ü'
Do Whil (m_ya$trz)
n1 = At(m_ya, trz)
a2 = Substr(trz, n1+1, 1)
If (a2$st4)
trz = Stuff(trz, n1, 1, '')
Else
trz = Stuff(trz, n1, 1, 'A')
Endif
Enddo
trz = Chrtran(trz, 'A', m_ya)
For i = 1 To 3
m_stnew = Substr(st5, i, 1)
Do Whil (m_stnew$trz)
n1 = At(m_stnew, trz)
a_pr = Substr(trz, n1-1, 1)
a_ne = Substr(trz, n1+1, 1)
Do Case
Case (a_ne$st4+'وهâلù')
If (a_pr$'.ٹ ')
trz = Stuff(trz, n1, 1, Substr(st5, i+6, 1))
Else
trz = Stuff(trz, n1, 1, 'A')
Endif
Case (a_ne$st2+'¯àنèمçûْ')
If (a_pr$'.ٹ ')
trz = Stuff(trz, n1, 1, Substr(st5, i+9, 1))
Else
trz = Stuff(trz, n1, 1, Substr(st5, i+3, 1))
Endif
Otherwise
trz = Stuff(trz, n1, 1, 'A')
Endcase
If addam
Exit
Endif
Enddo
trz = Chrtran(trz, 'A', m_stnew)
If addam
Exit
Endif
Endfor
Return trz