$id, "name"=>$pre." ".$row['NR_FK'], "description"=>" ", "date_entered"=>date("Y-m-d H:i:s"), "date_modified"=>date("Y-m-d H:i:s"), "modified_user_id"=>1, "assigned_user_id"=>1, "created_by"=>1, "deleted"=>0, "number"=>($i+1), "document_no"=>$pre." ".$row['NR_FK'], "parent_type"=>"Accounts", "parent_name"=>ch(str_replace("'","",$row['PLATNIK'])), "parent_id"=>$parent_id, "type"=>" ", "ecminvoiceout_id"=>"", "ecminvoiceout_name"=>"", "status"=>"accepted", "register_date"=>$rd[0].$rd[1].$rd[2].$rd[3]."-".$rd[4].$rd[5]."-".$rd[6].$rd[7], "sell_date"=>$sd[0].$sd[1].$sd[2].$sd[3]."-".$sd[4].$sd[5]."-".$sd[6].$sd[7], "payment_date"=>$rd[0].$rd[1].$rd[2].$rd[3]."-".$rd[4].$rd[5]."-".$rd[6].$rd[7], "parent_address_street"=>ch(str_replace("'","",$row['ADRES2'])), "parent_address_city"=>ch($r1,$r2,$a1[1]), "parent_address_postalcode"=>$a1[0], "to_nip"=>"", "subtotal"=>($row['WARTOSC']-$row['PODATEK']), "total"=>$row['WARTOSC'], "discount"=>0, "to_vatid"=>"", "to_is_vat_free"=>"", "header_text"=>"", "footer_text"=>"", "ads_text"=>"", "template_id"=>"1d178dc6-0904-3fa3-f51b-4a4b4698a173", "template_name"=>"E5 Polska Sp. z o. o.", "accepted"=>"", "email_id"=>"", "ecmlanguage"=>"pl_pl", "ecmpaymentcondition_id"=>"", "ecmpaymentcondition_text"=>"", "wz_id"=>"", "parent_contact_name"=>"", "parent_contact_title"=>"", "contact_id"=>"", "correct_id"=>"", "currency_id"=>"PLN", ); foreach($arr as $k=>$v){ $in[]=$k."='".$v."'"; } mysql_query("insert into ecminvoiceouts set ".implode(",",$in)); return $id; } function addProductLine($id,$i,$r){ $vats=array( 0=>"9b783d21-5548-6653-e1d6-49610eb3f9dd", 22=>"9c592a4a-2de0-1fa3-e082-494aeceb122c", 7=>"bf3a5fec-435f-af22-024a-4958b51863c8", ); $rr=mysql_fetch_array(mysql_query("select id from ecmproducts where code like '".$r['INDEKS']."' and deleted='0'")); $pid=$rr['id']; if($pid==""){ $pid=addProduct($r['INDEKS'],$r['NAZWA']); } $iid=create_guid(); $arr=array( "id"=>$iid, "date_entered"=>date("Y-m-d H:i:s"), "date_modified"=>date("Y-m-d H:i:s"), "modified_user_id"=>1, "assigned_user_id"=>1, "created_by"=>1, "deleted"=>0, "ecminvoiceout_id"=>$id, "ecmproduct_id"=>$pid, "position"=>$i, "code"=>ch(str_replace("'","",$r['INDEKS'])), "name"=>ch(str_replace("'","",$r['NAZWA'])), "quantity"=>$r['ILOSC'], "price"=>$r['CENA_SPRZ'], "discount"=>$r['RABAT'], "total"=>$r['WARTOSC'], "dd_unit_name"=>$r['NAZWA_J_M'], "dd_unit_id"=>1, "ecmvat_id"=>$vats[$r['VAT']], "ecmvat_value"=>$r['VAT'], "ecmvat_name"=>$r['VAT']."%", "ecmproductcategory_id"=>"", "currency_id"=>"PLN", "currency_name"=>"PLN", "tax_code"=>"", ); foreach($arr as $k=>$v){ $in[]=$k."='".$v."'"; } mysql_query("insert into ecminvoiceoutitems set ".implode(",",$in)); if(mysql_error()){ echo mysql_error()."\n".implode(",",$in); } return $iid; } include_once("class.dbf.php"); include_once("helper.php"); $w=mysql_query("select id,name,dir from ecmstocks where deleted='0'"); while($r=mysql_fetch_array($w)){ $dbfp = new dbf_class('klk/'.$r['dir'].'/_fk_list.dbf'); $num_recp=$dbfp->dbf_num_rec; //$num_recp=10000; $unset_arr=array("INDEKS","NAZWA","CENA_SPRZ","ILOSC","RABAT","WARTOSC","NAZWA_J_M","VAT","NR_SYSTEM"); for($i=0;$i<$num_recp;$i++){ echo "products ".$i."/".$num_recp."\n"; $rowp=$dbfp->getRowAssoc($i); foreach($rowp as $k=>$v){ if(!in_array($k,$unset_arr))unset($rowp[$k]); } $products[$rowp['NR_SYSTEM']][]=$rowp; } $dbf = new dbf_class('klk/'.$r['dir'].'/_fk.dbf'); $num_rec=$dbf->dbf_num_rec; //$num_rec=1000; $unset_arr=array("NR_FK","PLATNIK","PODATEK","WARTOSC","ADRES2","ANULOWANA","NR_SYSTEM","DATA","DATA_SPRZ","KOR_DO_WZ"); for($i=0;$i<$num_rec;$i++){ echo "docs ".$i."/".$num_rec."\n"; $docs[$i]=$dbf->getRowAssoc($i); foreach($docs[$i] as $k=>$v){ if(!in_array($k,$unset_arr))unset($docs[$i][$k]); } } for($i=0;$i<$num_rec;$i++){ echo $i."/".$num_rec."\n"; if($docs[$i]['ANULOWANA']!="F")continue; $id=addWz($docs[$i],$i,$r['id']); $j=1; foreach($products[$docs[$i]['NR_SYSTEM']] as $prod){ addProductLine($id,$j,$prod); $j++; } } } mysql_close($sql); ?>