16

16 16 .
.
, 16 1
sboper
.dbf, 1sboper.dbf, .
. - 1
sboper
.dbf. - .

1sboper.dbf, .
, 16 , .
00.
- , : 1
sboper.dbf
- , : 1
sboper.dbf

6 2008 , 16. .

- 17, 18 17.
, 16 (50 ),
DBF, .. 16 17.
, 17, 17 , .

:

 _dbf =  XBase;
 _dbf. = XBase.OEM;
 _dbf.(+"\1SBOPER.dbf");
 
  = ; 
 
  =  ;
 ..("Schet");
 ..("Subkonto");
 ..("OPERVAL");
 ..("OPERSUM"); 
 ..("OPERSUMV"); 
 ..("OPERKOL"); 
 ..("Schet,Subkonto");
 
  = 0;
  = ;
   _dbf.()  (  _dbf.())  
  = ; 
 ();
 
  =  + 1;
 
   % 100 = 0 
 ("    " + );
 ;
 
  (_dbf.OPERDATA) > () 
 ;
 ;
 
  ((_dbf.OPERNO), "D") > 0 
 ;
 ;  
 
 //   
   = .();  
 .Schet  = (_dbf.OPERIND1); 
 //  8    
 .Schet  = (.Schet, (.Schet)-8); 
 .Subkonto  = _dbf.SPSKNO1; 
 .OPERVAL = _dbf.OPERVAL; 
 .OPERSUM = _dbf.OPERSUM; 
 .OPERSUMV = _dbf.OPERSUMV; 
 .OPERKOL = _dbf.OPERKOL;  
 
 //   
   = .();
 .Schet  = (_dbf.OPERIND2);
 .Schet  = (.Schet, (.Schet)-8); 
 .Subkonto  = _dbf.SPSKNO2;
 .OPERVAL = _dbf.OPERVAL;
 .OPERSUM = -_dbf.OPERSUM;
 .OPERSUMV = -_dbf.OPERSUMV;
 .OPERKOL = -_dbf.OPERKOL;
 
 ; 
 
 _dbf.();
 .("Schet,Subkonto,OPERVAL","OPERSUM,OPERSUMV,OPERKOL");
 //    dbf 
 _dbf..("OPERSOD", "S", 50);
 _dbf..("SPSKNO1", "S", 20);
 _dbf..("SPSKNO2", "S", 20);
 _dbf..("OPERSUM", "N", 14, 2);
 _dbf..("OPERSUMV","N", 14, 2);
 _dbf..("OPERKOL", "N", 14, 3);
 _dbf..("OPERVAL", "S", 3);
 _dbf..("OPERDATA","D", ); 
 _dbf..("OPERWPNO","S", 2); 
 _dbf..("OPERFL", "S", 1); 
 _dbf..("OPERV", "S", 2); 
 _dbf..("OPERNO", "S", 12); 
 _dbf..("OPERS", "S", 1); 
 _dbf..("OPERSP", "S", 5);
 _dbf..("OPERIND1","S", 15);
 _dbf..("OPERIND2","S", 15); 
 _dbf..("OPERID", "S", 12);
 _dbf..("OPERN", "S", 5);
 
 _dbf. = XBase.OEM;
 
 _dbf.( + "\1SBOPER.dbf",); 
 _dbf. = ; 
 
 
 
 
  = 0;
 
       
 // ...
  .OPERSUM = 0  .OPERSUMV = 0  .OPERKOL = 0 
 ;
 ;
 
 // 
  = (.Schet);
  = (, ".");
   <> 0 
  = ((,  - 1));
 ;
 //    ...
     (, ()+";") <> 0 
 ;
 ;
 
   
  <>"20"  (.Subkonto, "1006") = 0  (.Subkonto, "2") = 0 
 ;
 ;
 ;
 
  =  + 1;
 
   % 10 =0 
 (" ,  DBF: " + );
 ();
 ;
 
 _dbf.(); 
 _dbf.OPERSOD = "    "+ ((), "=dd.MM.yyyy");
  .OPERSUM >= 0 
 _dbf.OPERIND1 = .Schet; 
 _dbf.SPSKNO1  = .Subkonto; 
 _dbf.OPERIND2 = "00"; 
 _dbf.SPSKNO2 = ""; 
  = 1;
 
 _dbf.OPERIND1 = "00"; 
 _dbf.SPSKNO1 = ""; 
 _dbf.OPERIND2 = .Schet; 
 _dbf.SPSKNO2  = .Subkonto; 
  = -1;
 ;
 
 _dbf.OPERVAL = .OPERVAL; 
 _dbf.OPERDATA = (); 
 
 
 _dbf.OPERSUM  =  * .OPERSUM; 
 _dbf.OPERSUMV =  * .OPERSUMV; 
 _dbf.OPERKOL  =  * .OPERKOL; 
 
 //     
  (, ()+";") = 0 
 _dbf.OPERSUMV = *.OPERSUM; //     
 _dbf.OPERVAL = 1; //
 ;
 
 ; 
 
 _dbf.(); 

- , ";", ";"
- , ";", ";"