itman
 
  
  Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
  | 
		
			
				 Posted: 18 Jun 2007 15:28    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				http://www.spb4plus.ru/online/
 
в библиотеке решений, хотя это не плагин (((
 
По Сб РФ БЭСТ настраивается нормально.
 
если помимо настройки БЭСТа то вот рабочий код экспорта в другой банк в текстовом формате.
 
 	  | Code: | 	 		  function main()
 
// Вывод в файл
 
altd()
 
// Файл отчета
 
Private RepFile,RepName
 
set date format "ddmm"
 
RepName:="c:\BSClnt_rbr\SUBSYS\IMPORT\v_"+alltrim(dtoc(date()))+alltrim(str(nnumber))+'.txt'
 
set date format "dd.mm.yyyy"
 
//if nnumber=1
 
RepFile:=FCreate(RepName)
 
If RepFile<=0
 
  SayError('Не возможно создать файл отчета!')
 
  Error()
 
EndIf
 
//#1|PayDocRuXE
 
lin1:="#"+alltrim(str(nnumber))+"|PayDocRuXE"
 
torep(lin1)
 
//DocumentDate     : Date;  
 
set date format "dd.mm.yyyy"
 
torep(dtoc(rsdoc->doper))
 
//DocumentNumber   : String;
 
torep(right(rsdoc->ndoc,3))
 
//CurrCode         : String;
 
torep("810")
 
//PayerAccount     : String;
 
torep(alltrim(rsdoc->acc_pay))
 
//PayerName        : String;
 
torep(alltrim(rsdoc->Org_pay))
 
// PayerKPP
 
pkpp:=if(at('/',rsdoc->codp_pay)>0,right(rsdoc->codp_pay,len(rsdoc->codp_pay)-at('/',rsdoc->codp_pay)),' ')
 
torep(pkpp)
 
//ReceiverBIC      : String;
 
torep(alltrim(rsdoc->mfo_rcv))
 
//ReceiverAccount  : String;
 
torep(alltrim(rsdoc->acc_rcv))
 
//Receiver         : String;
 
torep(alltrim(rsdoc->org_rcv))
 
//ReceiverINN      : String;
 
rinn:=if(at('/',rsdoc->codp_rcv)>0,left(rsdoc->codp_rcv,at('/',rsdoc->codp_rcv)-1),rsdoc->codp_rcv)
 
torep(rinn)
 
//Amount           : Float; 
 
torep(alltrim(str(rsdoc->summa1)))
 
//Ground           : String;
 
torep(alltrim(rsdoc->osnov_))
 
//Nds              : String;
 
torep()
 
//PaymentUrgent    : String;
 
torep(alltrim(rsdoc->tabl_04))
 
//PayUntil         : Date;  
 
torep(dtoc(rsdoc->doper))
 
//OperType         : String;
 
torep(alltrim(rsdoc->tabl_01))
 
//SendType         : String;
 
do case
 
   case rsdoc->vid_plat=3
 
   typepl:=""
 
   case rsdoc->vid_plat=2 .and. left(rsdoc->codp_rcv,3)<>"63"
 
   typepl:="электронно"
 
   case rsdoc->vid_plat=2 .and. left(rsdoc->codp_rcv,3)="63"
 
   typepl:=""
 
   otherwise
 
   typepl:=""
 
endcase
 
torep(typepl)
 
//ReceiverKPP      : String;
 
rkpp:=if(at('/',rsdoc->codp_rcv)>0,right(rsdoc->codp_rcv,len(rsdoc->codp_rcv)-at('/',rsdoc->codp_rcv)),' ')
 
torep(rkpp)
 
//Stat1256         : String;
 
torep()
 
//CBCcode          : String;
 
torep(rsdoc->Kbk)
 
//OKATOcode        : String;
 
torep(rsdoc->Okato_rcv)
 
//PayGrndParam     : String;
 
torep(rsdoc->osnov_plat)
 
//TaxPeriodParam1  : String;
 
torep(if(Alltrim(rsdoc->nalog_srok)=='','',left(rsdoc->nalog_srok,2)))
 
//TaxPeriodParam2  : String;
 
torep(if(Alltrim(rsdoc->nalog_srok)=='','',substr(rsdoc->nalog_srok,4,2)))
 
//TaxPeriodParam3  : String;
 
torep(if(Alltrim(rsdoc->nalog_srok)=='','',right(rsdoc->nalog_srok,4)))
 
//DocNumParam2     : String;
 
torep(if((Alltrim(rsdoc->dnaldoc)=='') .or. (Alltrim(rsdoc->dnaldoc)=='0'),'','01'))
 
//DocDateParam1    : String;
 
torep(if((Alltrim(rsdoc->dnaldoc)=='') .or. (Alltrim(rsdoc->dnaldoc)=='0'),'',substr(rsdoc->nalog_srok,4,2)))
 
//DocDateParam2    : String;
 
torep(if((Alltrim(rsdoc->dnaldoc)=='') .or. (Alltrim(rsdoc->dnaldoc)=='0'),'',right(rsdoc->nalog_srok,4)))
 
//DocDateParam3    : String;
 
torep(if(at('/',rsdoc->codp_rcv)>0,right(rsdoc->codp_rcv,len(rsdoc->codp_rcv)-at('/',rsdoc->codp_rcv)),' '))
 
//PayTypeParam     : String;
 
torep(rsdoc->type_plat)
 
set date format "dd/mm/yy"
 
torep(";end")
 
rsdoc->(Reclock())
 
rsdoc->otmetka:=.T.
 
rsdoc->(F_DBUNLOCK())
 
 
FClose(RepFile)
 
 
static procedure ToRep(S)
 
 Private I
 
  If S=Nil
 
    S:=''
 
  EndIf
 
  If ValType(S)='N'
 
    I:=1
 
    Do While I<=S
 
      FWrite(RepFile,Chr(13)+Chr(10))
 
      I:=I+1
 
    EndDo
 
  Else
 
    FWrite(RepFile,alltrim(S)+Chr(13)+Chr(10))
 
  EndIf
 
Return
 
 
return | 	 
  | 
			 
		  |