[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Fmsystem-commits] [10727] property: export filter
From: |
Sigurd Nes |
Subject: |
[Fmsystem-commits] [10727] property: export filter |
Date: |
Tue, 29 Jan 2013 13:52:35 +0000 |
Revision: 10727
http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=10727
Author: sigurdne
Date: 2013-01-29 13:52:35 +0000 (Tue, 29 Jan 2013)
Log Message:
-----------
property: export filter
Modified Paths:
--------------
trunk/property/inc/export/default/El_anlegg_LRS
Removed Paths:
-------------
trunk/property/inc/export/default/El_anlegg_LRS_2
Modified: trunk/property/inc/export/default/El_anlegg_LRS
===================================================================
--- trunk/property/inc/export/default/El_anlegg_LRS 2013-01-29 13:51:21 UTC
(rev 10726)
+++ trunk/property/inc/export/default/El_anlegg_LRS 2013-01-29 13:52:35 UTC
(rev 10727)
@@ -32,9 +32,6 @@
* @package property
*/
- phpgw::import_class('phpgwapi.datetime');
- phpgw::import_class('phpgwapi.xmlhelper');
-
class export_conv
{
//var $fil_katalog='c:/temp'; //On windows use
"//computername/share/filename" or "\\\\computername\share\filename" to check
files on network shares.
@@ -60,100 +57,80 @@
$this->db->query($sql,__LINE__,__FILE__);
$anlegg = array();
+ $TreeID = '202';
$PeriodFrom = date('Ym');
$PeriodTo = 209912;
- $doc = new DOMDocument('1.0', 'utf-8');
- $domElement = $doc->createElement('AttributeValueList');
-
$domElement->setAttribute('xmlns:xsi','http://www.w3.org/2001/XMLSchema-instance');
-
$domElement->setAttribute('xsi:noNamespaceSchemaLocation','..\XmlSchema\AttributeValueList.xsd');
+ $memory = xmlwriter_open_memory();
+ xmlwriter_set_indent ( $memory , true );
+ xmlwriter_start_document($memory,'1.0','UTF-8');
+ xmlwriter_start_element($memory,'TreeListe');
+
xmlwriter_write_attribute($memory,'TreeID',$TreeID);
+
xmlwriter_write_attribute($memory,'xmlns:xsi','http://www.w3.org/2001/XMLSchema-instance');
+
xmlwriter_write_attribute($memory,'xsi:noNamespaceSchemaLocation','TreeListe.xsd');
while ($this->db->next_record())
{
- $Attribute = array
- (
- 'ID' => 'TJ',
- 'Name' =>
'MALEPID',
- 'Value' =>
substr($this->db->f('maalepunkt_id'),-8),
- // 'id' =>
$this->db->f('id'),
- 'Description' =>
$this->db->f('address'),
- 'PeriodFrom' => $PeriodFrom,
- 'PeriodTo' =>
$PeriodTo,
- 'Status' => 'N',
- 'Percentage' => '100',
- 'RelationValueList' => array
- (
- 'RelationValue' => array
- (
- array
- (
- 'ID'
=> 'A3',
- 'Name'
=> 'FIRMA',
- 'Value'
=> 'BB',
-
'Percentage' => '100'
- ),
- array
- (
- 'ID'
=> 'A0',
- 'Name'
=> 'Art',
- 'Value'
=> '12304121',
-
'Percentage' => '100'
- ),
- array
- (
- 'ID'
=> 'C1',
- 'Name'
=> 'Ansvar',
- 'Value'
=> '45',
-
'Percentage' => '100'
- ),
- array
- (
- 'ID'
=> 'F0',
- 'Name'
=> 'Objekt',
- 'Value'
=> $this->db->f('loc1'),
-
'Percentage' => '100'
- ),
- array
- (
- 'ID'
=> 'B0',
- 'Name'
=> 'Prosjekt',
- 'Value'
=> '',
-
'Percentage' => '100'
- ),
- array
- (
- 'ID'
=> 'B1',
- 'Name'
=> 'Fagkode',
- 'Value'
=> '999',
-
'Percentage' => '100'
- ),
- )
- )
- );
-
- $xmldata =
phpgwapi_xmlhelper::toXML($Attribute, 'AttributeValue');
-
- $reader = new XMLReader();
- $reader->XML($xmldata,'utf-8');
-
- while ($reader->read())
- {
- if ($reader->nodeType ==
XMLREADER::ELEMENT && $reader->localName == 'AttributeValue')
- {
- $domnode = $reader->expand();
-
$domElement->appendChild($domnode);
- break;
- }
- }
- $reader->close();
+ xmlwriter_start_element($memory,'Tree');
+ xmlwriter_write_element($memory,'ID',
'TJ');
+
xmlwriter_write_element($memory,'Verdi',
substr($this->db->f('maalepunkt_id'),-8));
+
xmlwriter_write_element($memory,'Beskrivelse', $this->db->f('address'));
+
xmlwriter_write_element($memory,'Firma', 'BB');
+
xmlwriter_write_element($memory,'PeriodeFra', $PeriodFrom);
+
xmlwriter_write_element($memory,'PeriodeTil', $PeriodTo);
+
xmlwriter_write_element($memory,'Status', 'N');
+
xmlwriter_start_element($memory,'BegrepsLister');
+
xmlwriter_start_element($memory,'BegrepsListe');
+
xmlwriter_write_attribute($memory,'Prosent', 100);
+
xmlwriter_start_element($memory,'Begrep');
+
xmlwriter_write_comment($memory , 'Firma' );
+
xmlwriter_write_element($memory,'ID', 'A3');
+
xmlwriter_write_element($memory,'Verdi', 'BB');
+
xmlwriter_end_element($memory);
+
xmlwriter_start_element($memory,'Begrep');
+
xmlwriter_write_comment($memory , 'Art' );
+
xmlwriter_write_element($memory,'ID', 'A0');
+
xmlwriter_write_element($memory,'Verdi', '12304121');
+
xmlwriter_end_element($memory);
+
xmlwriter_start_element($memory,'Begrep');
+
xmlwriter_write_comment($memory , 'Asvar' );
+
xmlwriter_write_element($memory,'ID', 'C1');
+
xmlwriter_write_element($memory,'Verdi', 45);
+
xmlwriter_end_element($memory);
+
xmlwriter_start_element($memory,'Begrep');
+
xmlwriter_write_comment($memory , 'Tjeneste' );
+
xmlwriter_write_element($memory,'ID', 'TJE');
+
xmlwriter_write_element($memory,'Verdi', '');
+
xmlwriter_end_element($memory);
+
xmlwriter_start_element($memory,'Begrep');
+
xmlwriter_write_comment($memory , 'Objekt' );
+
xmlwriter_write_element($memory,'ID', 'F0');
+
xmlwriter_write_element($memory,'Verdi', $this->db->f('loc1'));
+
xmlwriter_end_element($memory);
+
xmlwriter_start_element($memory,'Begrep');
+
xmlwriter_write_comment($memory , 'Prosjekt' );
+
xmlwriter_write_element($memory,'ID', 'B0');
+
xmlwriter_write_element($memory,'Verdi', '');
+
xmlwriter_end_element($memory);
+
xmlwriter_start_element($memory,'Begrep');
+
xmlwriter_write_comment($memory , 'Fagkode' );
+
xmlwriter_write_element($memory,'ID', 'B1');
+
xmlwriter_write_element($memory,'Verdi', '999');
+
xmlwriter_end_element($memory);
+
xmlwriter_start_element($memory,'Begrep');
+
xmlwriter_write_comment($memory , 'AV' );
+
xmlwriter_write_element($memory,'ID', 'AV');
+
xmlwriter_write_element($memory,'Verdi', '');
+
xmlwriter_end_element($memory);
+ xmlwriter_end_element($memory);
+ xmlwriter_end_element($memory);
+ xmlwriter_end_element($memory);
}
- $doc->appendChild($domElement);
+ xmlwriter_end_element($memory);
+ $xml = xmlwriter_output_memory($memory,true);
- $doc->formatOutput = true;
- $doc->preserveWhiteSpace = true;
- $xml = $doc->saveXML();
-
header('Content-type: text/xml');
+
echo $xml; die();
return $xml;
@@ -162,7 +139,7 @@
protected function log_end()
{
$msgbox_data =
$GLOBALS['phpgw']->common->msgbox_data($this->receipt);
-
+
$insert_values= array
(
0,
@@ -350,7 +327,7 @@
return $transfer_ok;
}
- protected function phpftp_connect()
+ protected function phpftp_connect()
{
$server =
$this->config->config_data['common']['host'];
$user =
$this->config->config_data['common']['user'];
Deleted: trunk/property/inc/export/default/El_anlegg_LRS_2
===================================================================
--- trunk/property/inc/export/default/El_anlegg_LRS_2 2013-01-29 13:51:21 UTC
(rev 10726)
+++ trunk/property/inc/export/default/El_anlegg_LRS_2 2013-01-29 13:52:35 UTC
(rev 10727)
@@ -1,371 +0,0 @@
-<?php
- /**
- * phpGroupWare - property: a Facilities Management System.
- *
- * @author Sigurd Nes <address@hidden>
- * @copyright Copyright (C) 2003,2004,2005,2006,2007 Free Software
Foundation, Inc. http://www.fsf.org/
- * This file is part of phpGroupWare.
- *
- * phpGroupWare is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * phpGroupWare is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with phpGroupWare; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
USA
- *
- * @license http://www.gnu.org/licenses/gpl.html GNU General Public
License
- * @internal Development of this application was funded by
http://www.bergen.kommune.no/bbb_/ekstern/
- * @package property
- * @subpackage export
- * @version $Id: Basware_X114 9585 2012-06-13 18:22:44Z sigurdne $
- */
-
- /**
- * Description
- * @package property
- */
-
- class export_conv
- {
- //var $fil_katalog='c:/temp'; //On windows use
"//computername/share/filename" or "\\\\computername\share\filename" to check
files on network shares.
-
- var $debug;
- var $client_code = 14;
- protected $connection = false;
- protected $receipt = array();
-
- function __construct()
- {
- $GLOBALS['phpgw_info']['flags']['currentapp'] =
'property';
- $this->db = &
$GLOBALS['phpgw']->db;
- $this->join = &
$this->db->join;
-
- $this->config =
CreateObject('admin.soconfig',$GLOBALS['phpgw']->locations->get_id('property',
'.invoice'));
- }
-
- protected function get_anlegg()
- {
- $sql= "SELECT * FROM fm_entity_1_11 WHERE
auto_kontering = 1";
-
- $this->db->query($sql,__LINE__,__FILE__);
- $anlegg = array();
-
- $TreeID = '202';
- $PeriodFrom = date('Ym');
- $PeriodTo = 209912;
-
- $memory = xmlwriter_open_memory();
- xmlwriter_set_indent ( $memory , true );
- xmlwriter_start_document($memory,'1.0','UTF-8');
- xmlwriter_start_element($memory,'TreeListe');
-
xmlwriter_write_attribute($memory,'TreeID',$TreeID);
-
xmlwriter_write_attribute($memory,'xmlns:xsi','http://www.w3.org/2001/XMLSchema-instance');
-
xmlwriter_write_attribute($memory,'xsi:noNamespaceSchemaLocation','TreeListe.xsd');
-
- while ($this->db->next_record())
- {
- xmlwriter_start_element($memory,'Tree');
- xmlwriter_write_element($memory,'ID',
'TJ');
-
xmlwriter_write_element($memory,'Verdi',
substr($this->db->f('maalepunkt_id'),-8));
-
xmlwriter_write_element($memory,'Beskrivelse', $this->db->f('address'));
-
xmlwriter_write_element($memory,'Firma', 'BB');
-
xmlwriter_write_element($memory,'PeriodeFra', $PeriodFrom);
-
xmlwriter_write_element($memory,'PeriodeTil', $PeriodTo);
-
xmlwriter_write_element($memory,'Status', 'N');
-
xmlwriter_start_element($memory,'BegrepsLister');
-
xmlwriter_start_element($memory,'BegrepsListe');
-
xmlwriter_write_attribute($memory,'Prosent', 100);
-
xmlwriter_start_element($memory,'Begrep');
-
xmlwriter_write_comment($memory , 'Firma' );
-
xmlwriter_write_element($memory,'ID', 'A3');
-
xmlwriter_write_element($memory,'Verdi', 'BB');
-
xmlwriter_end_element($memory);
-
xmlwriter_start_element($memory,'Begrep');
-
xmlwriter_write_comment($memory , 'Art' );
-
xmlwriter_write_element($memory,'ID', 'A0');
-
xmlwriter_write_element($memory,'Verdi', '12304121');
-
xmlwriter_end_element($memory);
-
xmlwriter_start_element($memory,'Begrep');
-
xmlwriter_write_comment($memory , 'Asvar' );
-
xmlwriter_write_element($memory,'ID', 'C1');
-
xmlwriter_write_element($memory,'Verdi', 45);
-
xmlwriter_end_element($memory);
-
xmlwriter_start_element($memory,'Begrep');
-
xmlwriter_write_comment($memory , 'Tjeneste' );
-
xmlwriter_write_element($memory,'ID', 'TJE');
-
xmlwriter_write_element($memory,'Verdi', '');
-
xmlwriter_end_element($memory);
-
xmlwriter_start_element($memory,'Begrep');
-
xmlwriter_write_comment($memory , 'Objekt' );
-
xmlwriter_write_element($memory,'ID', 'F0');
-
xmlwriter_write_element($memory,'Verdi', $this->db->f('loc1'));
-
xmlwriter_end_element($memory);
-
xmlwriter_start_element($memory,'Begrep');
-
xmlwriter_write_comment($memory , 'Prosjekt' );
-
xmlwriter_write_element($memory,'ID', 'B0');
-
xmlwriter_write_element($memory,'Verdi', '');
-
xmlwriter_end_element($memory);
-
xmlwriter_start_element($memory,'Begrep');
-
xmlwriter_write_comment($memory , 'Fagkode' );
-
xmlwriter_write_element($memory,'ID', 'B1');
-
xmlwriter_write_element($memory,'Verdi', '999');
-
xmlwriter_end_element($memory);
-
xmlwriter_start_element($memory,'Begrep');
-
xmlwriter_write_comment($memory , 'AV' );
-
xmlwriter_write_element($memory,'ID', 'AV');
-
xmlwriter_write_element($memory,'Verdi', '');
-
xmlwriter_end_element($memory);
- xmlwriter_end_element($memory);
- xmlwriter_end_element($memory);
- xmlwriter_end_element($memory);
- }
- xmlwriter_end_element($memory);
- $xml = xmlwriter_output_memory($memory,true);
-
- header('Content-type: text/xml');
-
- echo $xml; die();
-
- return $xml;
- }
-
- protected function log_end()
- {
- $msgbox_data =
$GLOBALS['phpgw']->common->msgbox_data($this->receipt);
-
- $insert_values= array
- (
- 0,
- date($this->db->datetime_format()),
- 'El_anlegg_LRS',
- implode(',',(array_keys($msgbox_data)))
- );
-
- $insert_values =
$this->db->validate_insert($insert_values);
-
- $sql = "INSERT INTO fm_cron_log
(cron,cron_date,process,message) "
- . "VALUES ($insert_values)";
- $this->db->query($sql,__LINE__,__FILE__);
- }
-
- public function overfor($download)
- {
-
-// $download = 'on';
-// $download = False;
-// $this->debug=True;
-
- //Bestem filnavn
- $external_ref = '';
- $Filnavn = $this->LagFilnavn($external_ref);
-
- if (!$Filnavn)
- {
- $message='LagFilnavn: Filnavn er i bruk';
- $receipt['error'][]= array('msg' => $message);
- $this->log_end();
- echo $message;
- return;
- }
-
- //Test om filen kan opprettes og skrives til
- if (@fopen($Filnavn, "wb"))
- {
- unlink($Filnavn);
- }
- else
- {
- $message='kan ikke lagre til fil: '. $Filnavn
.'<br>';
- if($this->debug)
- {
- echo $message;
- }
- else
- {
- $receipt['error'][]= array('msg' =>
$message);
- $this->log_end();
- }
- }
-
- //Velg ut alle anlegg som skal overføres
- $anlegg = $this->get_anlegg();
-
- if ($anlegg)
- {
- $this->receipt['message'][]= array('msg' =>
$this->transfer_anlegg($anlegg, $Filnavn, $download));
- }
-
- if($this->connection)
- {
- switch
($this->config->config_data['common']['method'])
- {
- case 'ftp';
- ftp_quit($this->connection);
- break;
- case 'ssh';
- ssh2_exec($this->connection,
'exit');
- break;
- }
- }
- //Lagre melding
- if ($download=='on')
- {
- $this->log_end();
- }
-
- return $receipt;
- }
-
-
- protected function LagFilnavn ($external_ref = '')
- {
- if(!$external_ref)
- {
- $external_ref = mt_rand();
- }
- $fil_katalog =
$this->config->config_data['export']['path'];
-
- $Filnavn = $fil_katalog .
"/x114_14_{$external_ref}.xml";
-
- //Sjekk om filen eksisterer
- if (file_exists($Filnavn))
- {
- unlink($Filnavn);
- }
-
- return $Filnavn;
- }
-
- protected function transfer_anlegg($xmldata, $Filnavn,
$download)
- {
- if ($download=='on' && !$this->debug)
- {
- $file_written = false;
- $fp = fopen($Filnavn, "wb");
- fwrite($fp,$xmldata);
-
- if(fclose($fp))
- {
- $file_written=true;
- }
-
- if( $file_written &&
($this->config->config_data['common']['method'] != 'ftp' &&
$this->config->config_data['common']['method'] != 'ssh'))
- {
- $transfer_ok = true;
- }
- else if($file_written)
- {
- $transfer_ok =
$this->transfer($xmldata,$Filnavn);
- }
-
- if($transfer_ok)
- {
- $message = "El Anlegg er overført, fil:
{$Filnavn}";
- }
- else
- {
- $message = 'Noe gikk galt med
overføring av El Anlegg';
- }
- }
- else
- {
- $message = $xmldata;
- }
-
- return $message;
- }
-
-
- protected function transfer($xmldata,$Filnavn)
- {
- $transfer_ok = false;
-
if($this->config->config_data['common']['method']=='ftp' ||
$this->config->config_data['common']['method']=='ssh')
- {
- if(!$connection = $this->connection)
- {
- $connection =
$this->phpftp_connect();
- }
-
- $basedir =
$this->config->config_data['export']['remote_basedir'];
- if($basedir)
- {
- $remote_file = $basedir . '/' .
basename($Filnavn);
- }
- else
- {
- $remote_file = basename($Filnavn);
- }
-
- switch
($this->config->config_data['common']['method'])
- {
- case 'ftp';
- $transfer_ok =
ftp_put($connection,$remote_file, $Filnavn, FTP_BINARY);
- break;
- case 'ssh';
- $sftp = ssh2_sftp($connection);
- $stream =
@fopen("ssh2.sftp://$sftp$remote_file", 'w');
- $data_to_send =
@file_get_contents($Filnavn);
- fwrite($stream, $data_to_send);
- $transfer_ok = @fclose($stream);
- break;
- default:
- $transfer_ok = false;
- }
-
- if (!$transfer_ok)
- {
- unlink($Filnavn);
- }
- }
- return $transfer_ok;
- }
-
- protected function phpftp_connect()
- {
- $server =
$this->config->config_data['common']['host'];
- $user =
$this->config->config_data['common']['user'];
- $password =
$this->config->config_data['common']['password'];
- $port = 22;
-
- switch ($this->config->config_data['common']['method'])
- {
- case 'ftp';
- if($connection = ftp_connect($server))
- {
-
ftp_login($connection,$user,$password);
- }
- break;
- case 'ssh';
- if (!function_exists("ssh2_connect"))
- {
- die("function ssh2_connect
doesn't exist");
- }
- if(!($connection =
ssh2_connect("$server", $port)))
- {
- $message = "fail: unable to
establish connection";
- _debug_array($message);
- //$receipt['error'][]=
array('msg' => $message);
- }
- else
- {
- // try to authenticate with
username root, password secretpassword
-
if(!ssh2_auth_password($connection, $user, $password))
- {
- $message = "fail:
unable to authenticate";
- _debug_array($message);
- //$receipt['error'][]=
array('msg' => $message);
- }
- }
- break;
- }
- $this->connection = $connection;
- return $connection;
- }
- }
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Fmsystem-commits] [10727] property: export filter,
Sigurd Nes <=