Sunteți pe pagina 1din 12

magento_produtos_atualizar_openerp.

php
1 <?php
2 /*
3 * magento_produtos_atualizar_openerp.php
4*
5 * Captura atributos dos produtos Magento e atualiza no OpenERP
6*
7 * Seg,30/09/2013 - Criao
8*
9 */
10
11 # configuracoes
12 date_default_timezone_set('America/Sao_Paulo');
13 ini_set('mysql.connect_timeout', 20);
14
15 # echo
16 $mensagem = utf8_decode(formata_data_extenso(date('Y-m-d H:i:s'))." - "."Iniciando
script...\n");
17 echo $mensagem;
18 $mensagem = formata_data_extenso(date('Y-m-d H:i:s'))." "."magento_produtos_atualizar_openerp.php: Captura atributos dos produtos Magento e
atualiza no OpenERP.\n\n";
19 echo $mensagem;
20
21 # importando bibliotecas
22 require_once 'dal.php';
23 require_once 'sistema.php';
24 $sistema = new sistema();
25
26 # selecionar produtos magento
27 $mensagem = formata_data_extenso(date('Y-m-d H:i:s'))." - "."Selecionando produtos
magento...\n";
28 echo $mensagem;
29
30 # capturando produtos magento
31 $var1 = "";
32 $var1 .= "SELECT \n";
33 $var1 .= "
cpe.entity_id \n";
34 $var1 .= "
,cpe.sku \n";
35 $var1 .= "
,cpe.created_at \n";
36 $var1 .= "
,cpe.updated_at \n";
37 $var1 .= "
,Coalesce(cped73.value, 0)
AS 'cost' \n";
38 $var1 .= "
,Coalesce(cped69.value, 0)
AS 'price' \n";
39 $var1 .= "
,Coalesce(cped70.value, 0)
AS 'special_price' \n";
40 $var1 .= "
,Coalesce(cped74.value, 0)
AS 'weight' \n";
41 $var1 .= "
,Coalesce(cpev79.value, '') AS 'image' \n";
42 $var1 .= "
,Coalesce(cpev105.value, '') AS 'image_label' \n";
43 $var1 .= "
,Coalesce(cpev78.value, '') AS 'meta_description' \n";
44 $var1 .= "
,Coalesce(cpev76.value, '') AS 'meta_title' \n";
45 $var1 .= "
,Coalesce(cpev65.value, '') AS 'name' \n";
46 $var1 .= "
,Coalesce(cpev80.value, '') AS 'small_image' \n";
47 $var1 .= "
,Coalesce(cpev106.value, '') AS 'small_image_label' \n";
48 $var1 .= "
,Coalesce(cpev81.value, '') AS 'thumbnail' \n";
49 $var1 .= "
,Coalesce(cpev107.value, '') AS 'thumbnail_label' \n";
50 $var1 .= "
,Coalesce(cpev90.value, '') AS 'url_key' \n";
51 $var1 .= "
,Coalesce(cpet66.value, '') AS 'description' \n";
52 $var1 .= "
,Coalesce(cpet67.value, '') AS 'short_description' \n";
53 $var1 .= "
,Coalesce(cpei133.value, 0) AS 'cores' \n";
54 $var1 .= "
,Coalesce(cpei132.value, 0) AS 'enable_zoom_plugin' \n";
55 $var1 .= "
,Coalesce(cpei89.value, 0) AS 'status' \n";
56 $var1 .= "
,Coalesce(cpei134.value, 0) AS 'tamanhos' \n";
57 $var1 .= "
,Coalesce(cped71.value, '9999-12-31 23:59:59') AS 'special_from_date' \n";
58 $var1 .= "
,Coalesce(cped72.value, '9999-12-31 23:59:59') AS 'special_to_date' \n";
Page 1

magento_produtos_atualizar_openerp.php
59 $var1
60 $var1
61 $var1
62 $var1
63 $var1
64 $var1
65 $var1
66 $var1
67 $var1
68 $var1
69 $var1
70 $var1
71 $var1
72 $var1
73 $var1
74 $var1
75 $var1
76 $var1
77 $var1
78 $var1
79 $var1
80 $var1
81 $var1
82 $var1
83 $var1
84 $var1
85 $var1
86 $var1
87 $var1
88 $var1
89 $var1
90 $var1
91 $var1
92 $var1
93 $var1
94 $var1
95 $var1
96 $var1
97 $var1
98 $var1
99 $var1
100 $var1
101 $var1
102 $var1
103 $var1
104 $var1
105 $var1
106 $var1
107 $var1
108 $var1
109 $var1
110 $var1
111 $var1
112 $var1
113 $var1
114 $var1
115 $var1
116 $var1
117 $var1
118 $var1
119 $var1
120 $var1

.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=
.=

"FROM
\n";
"
catalog_product_entity cpe \n";
"
LEFT OUTER JOIN catalog_product_entity_decimal cped73 \n";
"
ON cped73.entity_id = cpe.entity_id \n";
"
AND cped73.attribute_id = 73 \n";
"
LEFT OUTER JOIN catalog_product_entity_decimal cped69 \n";
"
ON cped69.entity_id = cpe.entity_id \n";
"
AND cped69.attribute_id = 69 \n";
"
LEFT OUTER JOIN catalog_product_entity_decimal cped70 \n";
"
ON cped70.entity_id = cpe.entity_id \n";
"
AND cped70.attribute_id = 70 \n";
"
LEFT OUTER JOIN catalog_product_entity_decimal cped74 \n";
"
ON cped74.entity_id = cpe.entity_id \n";
"
AND cped74.attribute_id = 74 \n";
"
LEFT OUTER JOIN catalog_product_entity_varchar cpev79 \n";
"
ON cpev79.entity_id = cpe.entity_id \n";
"
AND cpev79.attribute_id = 79 \n";
"
LEFT OUTER JOIN catalog_product_entity_varchar cpev105 \n";
"
ON cpev105.entity_id = cpe.entity_id \n";
"
AND cpev105.attribute_id = 105 \n";
"
LEFT OUTER JOIN catalog_product_entity_varchar cpev78 \n";
"
ON cpev78.entity_id = cpe.entity_id \n";
"
AND cpev78.attribute_id = 78 \n";
"
LEFT OUTER JOIN catalog_product_entity_varchar cpev76 \n";
"
ON cpev76.entity_id = cpe.entity_id \n";
"
AND cpev76.attribute_id = 76 \n";
"
LEFT OUTER JOIN catalog_product_entity_varchar cpev65 \n";
"
ON cpev65.entity_id = cpe.entity_id \n";
"
AND cpev65.attribute_id = 65 \n";
"
LEFT OUTER JOIN catalog_product_entity_varchar cpev80 \n";
"
ON cpev80.entity_id = cpe.entity_id \n";
"
AND cpev80.attribute_id = 80 \n";
"
LEFT OUTER JOIN catalog_product_entity_varchar cpev106 \n";
"
ON cpev106.entity_id = cpe.entity_id \n";
"
AND cpev106.attribute_id = 106 \n";
"
LEFT OUTER JOIN catalog_product_entity_varchar cpev81 \n";
"
ON cpev81.entity_id = cpe.entity_id \n";
"
AND cpev81.attribute_id = 81 \n";
"
LEFT OUTER JOIN catalog_product_entity_varchar cpev107 \n";
"
ON cpev107.entity_id = cpe.entity_id \n";
"
AND cpev107.attribute_id = 107 \n";
"
LEFT OUTER JOIN catalog_product_entity_varchar cpev90 \n";
"
ON cpev90.entity_id = cpe.entity_id \n";
"
AND cpev90.attribute_id = 90 \n";
"
LEFT OUTER JOIN catalog_product_entity_text cpet66 \n";
"
ON cpet66.entity_id = cpe.entity_id \n";
"
AND cpet66.attribute_id = 66 \n";
"
LEFT OUTER JOIN catalog_product_entity_text cpet67 \n";
"
ON cpet67.entity_id = cpe.entity_id \n";
"
AND cpet67.attribute_id = 67 \n";
"
LEFT OUTER JOIN catalog_product_entity_int cpei133 \n";
"
ON cpei133.entity_id = cpe.entity_id \n";
"
AND cpei133.attribute_id = 133 \n";
"
LEFT OUTER JOIN catalog_product_entity_int cpei132 \n";
"
ON cpei132.entity_id = cpe.entity_id \n";
"
AND cpei132.attribute_id = 132 \n";
"
LEFT OUTER JOIN catalog_product_entity_int cpei89 \n";
"
ON cpei89.entity_id = cpe.entity_id \n";
"
AND cpei89.attribute_id = 89 \n";
"
LEFT OUTER JOIN catalog_product_entity_int cpei134 \n";
"
ON cpei134.entity_id = cpe.entity_id \n";
"
AND cpei134.attribute_id = 134 \n";
Page 2

magento_produtos_atualizar_openerp.php
121 $var1 .= "
LEFT OUTER JOIN catalog_product_entity_datetime cped71 \n";
122 $var1 .= "
ON cped71.entity_id = cpe.entity_id \n";
123 $var1 .= "
AND cped71.attribute_id = 71 \n";
124 $var1 .= "
LEFT OUTER JOIN catalog_product_entity_datetime cped72 \n";
125 $var1 .= "
ON cped72.entity_id = cpe.entity_id \n";
126 $var1 .= "
AND cped72.attribute_id = 72 \n";
127 $dal = new dal();
128 $query = $var1;
129 $result = $dal->selecionar_registros_magento($query);
130
131 # contadores
132 $registros_lidos = 0;
133 $registros_encontrados_id_magento = 0;
134 $registros_encontrados_ean13 = 0;
135 $registros_encontrados_default_code = 0;
136 $registros_incluidos =0;
137 $registros_atualizados_product_template_id_magento = 0;
138 $registros_atualizados_product_product_id_magento = 0;
139 $registros_atualizados_product_template_ean13 = 0;
140 $registros_atualizados_product_product_ean13 = 0;
141 $registros_atualizados_product_template_default_code = 0;
142 $registros_atualizados_product_product_default_code = 0;
143
144 $mensagem = formata_data_extenso(date('Y-m-d H:i:s'))." - "."Lendo produtos magento...\n";
145 echo $mensagem;
146
147 while($row = mysql_fetch_assoc($result)){
148
149
# exibir produto
150
$mensagem = $row["sku"]." - ".$row["name"]."\n";
151
$mensagem = utf8_decode($mensagem);
152
echo $mensagem;
153
154
155
# definir valores da iterao
156
$encontrado = false;
157
158
# busca por id do magento
159
if(!$encontrado){
160
161
# buscando produto por id_magento
162
$query_busca_id_magento = "SELECT pt.id FROM product_template pt WHERE x_entity_id
= ".$row["entity_id"];
163
$dal_busca_id_magento = new dal();
164
$result_busca_id_magento =
$dal_busca_id_magento->selecionar_registros_openerp($query_busca_id_magento);
165
166
# encontrou produto por id do magento
167
if(pg_num_rows($result_busca_id_magento)>0){
168
169
# alterando variaveis de status e totalizadores
170
$encontrado = true;
171
$registros_encontrados_id_magento += 1;
172
173
# atualizando dados de produtos (product_template)
174
$row_busca_id_magento = pg_fetch_assoc($result_busca_id_magento);
175
176
$query_update = "";
177
$query_update .= " UPDATE product_template SET ";
178
$query_update .= "
x_price = ".$row["price"]." ";
179
$query_update .= "
,x_name =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["name"]))."' ";
Page 3

magento_produtos_atualizar_openerp.php
180
181
182
183
184
185
186
187

$query_update .= "
,x_sku = '".utf8_encode($row["sku"])."' ";
$query_update .= "
,x_created_at = '".$row["created_at"]."' ";
$query_update .= "
,x_updated_at = '".$row["updated_at"]."' ";
$query_update .= "
,x_special_price = ".$row["special_price"]." ";
$query_update .= "
,x_weight = ".$row["weight"]." ";
$query_update .= "
,x_image = '".$row["image"]."' ";
$query_update .= "
,x_image_label = '".$row["image_label"]."' ";
$query_update .= "
,x_meta_description =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["meta_description"]))."'
";
188
$query_update .= "
,x_meta_title =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["meta_title"]))."' ";
189
$query_update .= "
,x_small_image = '".$row["small_image"]."' ";
190
$query_update .= "
,x_small_image_label = '".$row["small_image_label"]."' ";
191
$query_update .= "
,x_thumbnail = '".$row["thumbnail"]."' ";
192
$query_update .= "
,x_thumbnail_label = '".$row["thumbnail_label"]."' ";
193
$query_update .= "
,x_url_key = '".$row["url_key"]."' ";
194
$query_update .= "
,x_description =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["description"]))."' ";
195
$query_update .= "
,x_short_description =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["short_description"]))."'
";
196
$query_update .= "
,x_cores = ".$row["cores"]." ";
197
$query_update .= "
,x_enable_zoom_plugin = ".$row["enable_zoom_plugin"]."
";
198
$query_update .= "
,x_status = ".$row["status"]." ";
199
$query_update .= "
,x_tamanhos = ".$row["tamanhos"]." ";
200
$query_update .= "
,x_special_from_date = '".$row["special_from_date"]."' ";
201
$query_update .= "
,x_special_to_date = '".$row["special_to_date"]."' ";
202
$query_update .= "
,write_date = now() ";
203
$query_update .= "
,write_uid = 1 ";
204
$query_update .= "
,list_price = ".$row["price"]." ";
205
$query_update .= "
,weight = ".$row["weight"]." ";
206
$query_update .= "
,name =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["name"]))."' ";
207
$query_update .= " WHERE ";
208
$query_update .= "
id = ".$row_busca_id_magento["id"];
209
$dal_update = new dal();
210
$query = $query_update;
211
$registros_afetados = $dal_update->atualizar_tabela_openerp($query);
212
if($registros_afetados>0){
213
$registros_atualizados_product_template_id_magento += 1;
214
}
215
216
# atualizando a tabela de produtos (product_product)
217
if(strlen($row["sku"])==13){
218
$ean13 = utf8_encode($row["sku"]);
219
$default_code = "";
220
}else{
221
$ean13 = "";
222
$default_code = utf8_encode($row["sku"]);
223
}
224
$query_update = "";
225
$query_update .= " UPDATE product_product SET ";
226
$query_update .= "
write_date = now() ";
227
$query_update .= "
,write_uid = 1 ";
228
$query_update .= "
,ean13 = '".$ean13."' ";
229
$query_update .= "
,default_code = '".$default_code."' ";
230
$query_update .= "
,name_template =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["name"]))."' ";
231
$query_update .= " WHERE ";
232
$query_update .= "
product_tmpl_id = ".$row_busca_id_magento["id"];
Page 4

magento_produtos_atualizar_openerp.php
233
234
235
236
237
238
239
240
241
242
243
244
245

$dal_update = new dal();


$query = $query_update;
$registros_afetados = $dal_update->atualizar_tabela_openerp($query);
if($registros_afetados>0){
$registros_atualizados_product_product_id_magento += 1;
}
}
}

# busca por EAN13


if(!$encontrado){
$query_busca_ean13 = "SELECT pp.product_tmpl_id as id FROM product_product pp WHERE
pp.ean13 = '".$row["sku"]."'";
246
$dal_busca_ean13 = new dal();
247
$result_busca_ean13 =
$dal_busca_ean13->selecionar_registros_openerp($query_busca_ean13);
248
249
if(pg_num_rows($result_busca_ean13)>0){
250
$encontrado = true;
251
$registros_encontrados_ean13 += 1;
252
253
254
# atualizando dados de produtos (product_template)
255
$row_busca_ean13 = pg_fetch_assoc($result_busca_ean13);
256
257
$query_update = "";
258
$query_update .= " UPDATE product_template SET ";
259
$query_update .= "
x_price = ".$row["price"]." ";
260
$query_update .= "
,x_name =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["name"]))."' ";
261
$query_update .= "
,x_sku = '".utf8_encode($row["sku"])."' ";
262
$query_update .= "
,x_created_at = '".$row["created_at"]."' ";
263
$query_update .= "
,x_updated_at = '".$row["updated_at"]."' ";
264
$query_update .= "
,x_special_price = ".$row["special_price"]." ";
265
$query_update .= "
,x_weight = ".$row["weight"]." ";
266
$query_update .= "
,x_image = '".$row["image"]."' ";
267
$query_update .= "
,x_image_label = '".$row["image_label"]."' ";
268
$query_update .= "
,x_meta_description =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["meta_description"]))."'
";
269
$query_update .= "
,x_meta_title =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["meta_title"]))."' ";
270
$query_update .= "
,x_small_image = '".$row["small_image"]."' ";
271
$query_update .= "
,x_small_image_label = '".$row["small_image_label"]."' ";
272
$query_update .= "
,x_thumbnail = '".$row["thumbnail"]."' ";
273
$query_update .= "
,x_thumbnail_label = '".$row["thumbnail_label"]."' ";
274
$query_update .= "
,x_url_key = '".$row["url_key"]."' ";
275
$query_update .= "
,x_description =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["description"]))."' ";
276
$query_update .= "
,x_short_description =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["short_description"]))."'
";
277
$query_update .= "
,x_cores = ".$row["cores"]." ";
278
$query_update .= "
,x_enable_zoom_plugin = ".$row["enable_zoom_plugin"]."
";
279
$query_update .= "
,x_status = ".$row["status"]." ";
280
$query_update .= "
,x_tamanhos = ".$row["tamanhos"]." ";
281
$query_update .= "
,x_special_from_date = '".$row["special_from_date"]."' ";
282
$query_update .= "
,x_special_to_date = '".$row["special_to_date"]."' ";
283
$query_update .= "
,write_date = now() ";
284
$query_update .= "
,write_uid = 1 ";
Page 5

magento_produtos_atualizar_openerp.php
285
286
287

$query_update .= "
,list_price = ".$row["price"]." ";
$query_update .= "
,weight = ".$row["weight"]." ";
$query_update .= "
,name =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["name"]))."' ";
288
$query_update .= " WHERE ";
289
$query_update .= "
id = ".$row_busca_ean13["id"];
290
$dal_update = new dal();
291
$query = $query_update;
292
$registros_afetados = $dal_update->atualizar_tabela_openerp($query);
293
if($registros_afetados>0){
294
$registros_atualizados_product_template_ean13 += 1;
295
}
296
297
# atualizando a tabela de produtos (product_product)
298
if(strlen($row["sku"])==13){
299
$ean13 = utf8_encode($row["sku"]);
300
$default_code = "";
301
}else{
302
$ean13 = "";
303
$default_code = utf8_encode($row["sku"]);
304
}
305
$query_update = "";
306
$query_update .= " UPDATE product_product SET ";
307
$query_update .= "
write_date = now() ";
308
$query_update .= "
,write_uid = 1 ";
309
$query_update .= "
,ean13 = '".$ean13."' ";
310
$query_update .= "
,default_code = '".$default_code."' ";
311
$query_update .= "
,name_template =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["name"]))."' ";
312
$query_update .= " WHERE ";
313
$query_update .= "
product_tmpl_id = ".$row_busca_ean13["id"];
314
$dal_update = new dal();
315
$query = $query_update;
316
$registros_afetados = $dal_update->atualizar_tabela_openerp($query);
317
if($registros_afetados>0){
318
$registros_atualizados_product_product_ean13 += 1;
319
}
320
321
322
}
323
}
324
325
# busca por DEFAULT_CODE
326
if(!$encontrado){
327
$query_busca_default_code = "SELECT pp.product_tmpl_id as id FROM product_product
pp WHERE pp.default_code = '".$row["sku"]."'";
328
$dal_busca_default_code = new dal();
329
$result_busca_default_code =
$dal_busca_default_code->selecionar_registros_openerp($query_busca_default_code);
330
331
if(pg_num_rows($result_busca_default_code)>0){
332
$encontrado = true;
333
$registros_encontrados_default_code += 1;
334
335
# atualizando dados de produtos (product_template)
336
$row_busca_default_code = pg_fetch_assoc($result_busca_default_code);
337
338
$query_update = "";
339
$query_update .= " UPDATE product_template SET ";
340
$query_update .= "
x_price = ".$row["price"]." ";
341
$query_update .= "
,x_name =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["name"]))."' ";
Page 6

magento_produtos_atualizar_openerp.php
342
343
344
345
346
347
348
349

$query_update .= "
,x_sku = '".utf8_encode($row["sku"])."' ";
$query_update .= "
,x_created_at = '".$row["created_at"]."' ";
$query_update .= "
,x_updated_at = '".$row["updated_at"]."' ";
$query_update .= "
,x_special_price = ".$row["special_price"]." ";
$query_update .= "
,x_weight = ".$row["weight"]." ";
$query_update .= "
,x_image = '".$row["image"]."' ";
$query_update .= "
,x_image_label = '".$row["image_label"]."' ";
$query_update .= "
,x_meta_description =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["meta_description"]))."'
";
350
$query_update .= "
,x_meta_title =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["meta_title"]))."' ";
351
$query_update .= "
,x_small_image = '".$row["small_image"]."' ";
352
$query_update .= "
,x_small_image_label = '".$row["small_image_label"]."' ";
353
$query_update .= "
,x_thumbnail = '".$row["thumbnail"]."' ";
354
$query_update .= "
,x_thumbnail_label = '".$row["thumbnail_label"]."' ";
355
$query_update .= "
,x_url_key = '".$row["url_key"]."' ";
356
$query_update .= "
,x_description =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["description"]))."' ";
357
$query_update .= "
,x_short_description =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["short_description"]))."'
";
358
$query_update .= "
,x_cores = ".$row["cores"]." ";
359
$query_update .= "
,x_enable_zoom_plugin = ".$row["enable_zoom_plugin"]."
";
360
$query_update .= "
,x_status = ".$row["status"]." ";
361
$query_update .= "
,x_tamanhos = ".$row["tamanhos"]." ";
362
$query_update .= "
,x_special_from_date = '".$row["special_from_date"]."' ";
363
$query_update .= "
,x_special_to_date = '".$row["special_to_date"]."' ";
364
$query_update .= "
,write_date = now() ";
365
$query_update .= "
,write_uid = 1 ";
366
$query_update .= "
,list_price = ".$row["price"]." ";
367
$query_update .= "
,weight = ".$row["weight"]." ";
368
$query_update .= "
,name =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["name"]))."' ";
369
$query_update .= " WHERE ";
370
$query_update .= "
id = ".$row_busca_default_code["id"];
371
$dal_update = new dal();
372
$query = $query_update;
373
$registros_afetados = $dal_update->atualizar_tabela_openerp($query);
374
if($registros_afetados>0){
375
$registros_atualizados_product_template_default_code += 1;
376
}
377
378
# atualizando a tabela de produtos (product_product)
379
if(strlen($row["sku"])==13){
380
$ean13 = utf8_encode($row["sku"]);
381
$default_code = "";
382
}else{
383
$ean13 = "";
384
$default_code = utf8_encode($row["sku"]);
385
}
386
$query_update = "";
387
$query_update .= " UPDATE product_product SET ";
388
$query_update .= "
write_date = now() ";
389
$query_update .= "
,write_uid = 1 ";
390
$query_update .= "
,ean13 = '".$ean13."' ";
391
$query_update .= "
,default_code = '".$default_code."' ";
392
$query_update .= "
,name_template =
'".utf8_encode($sistema->converter_caracteres_especiais_html($row["name"]))."' ";
393
$query_update .= " WHERE ";
394
$query_update .= "
product_tmpl_id = ".$row_busca_default_code["id"];
Page 7

magento_produtos_atualizar_openerp.php
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456

$dal_update = new dal();


$query = $query_update;
$registros_afetados = $dal_update->atualizar_tabela_openerp($query);
if($registros_afetados>0){
$registros_atualizados_product_product_default_code += 1;
}

}
}
# incluindo registro
if(!$encontrado){
# incluindo registro na tabela product_template (busca id_magento)
$query_insert_pt = "";
$query_insert_pt .= " INSERT INTO product_template (";
$query_insert_pt .= "
create_uid ";
$query_insert_pt .= "
,create_date ";
$query_insert_pt .= "
,write_date ";
$query_insert_pt .= "
,write_uid ";
$query_insert_pt .= "
,warranty ";
$query_insert_pt .= "
,list_price ";
$query_insert_pt .= "
,weight ";
$query_insert_pt .= "
,weight_net ";
$query_insert_pt .= "
,standard_price ";
$query_insert_pt .= "
,mes_type ";
$query_insert_pt .= "
,uom_id ";
$query_insert_pt .= "
,cost_method ";
$query_insert_pt .= "
,categ_id ";
$query_insert_pt .= "
,name ";
$query_insert_pt .= "
,uos_coeff ";
$query_insert_pt .= "
,volume ";
$query_insert_pt .= "
,sale_ok ";
$query_insert_pt .= "
,product_manager ";
$query_insert_pt .= "
,company_id ";
$query_insert_pt .= "
,state ";
$query_insert_pt .= "
,produce_delay ";
$query_insert_pt .= "
,uom_po_id ";
$query_insert_pt .= "
,rental ";
$query_insert_pt .= "
,type ";
$query_insert_pt .= "
,sale_delay ";
$query_insert_pt .= "
,supply_method ";
$query_insert_pt .= "
,procure_method ";
$query_insert_pt .= "
,x_entity_id ";
$query_insert_pt .= "
,x_sku ";
$query_insert_pt .= "
,x_created_at ";
$query_insert_pt .= "
,x_updated_at ";
$query_insert_pt .= "
,x_cost ";
$query_insert_pt .= "
,x_price ";
$query_insert_pt .= "
,x_special_price ";
$query_insert_pt .= "
,x_weight ";
$query_insert_pt .= "
,x_image ";
$query_insert_pt .= "
,x_image_label ";
$query_insert_pt .= "
,x_meta_description ";
$query_insert_pt .= "
,x_meta_title ";
$query_insert_pt .= "
,x_name ";
$query_insert_pt .= "
,x_small_image ";
$query_insert_pt .= "
,x_small_image_label ";
$query_insert_pt .= "
,x_thumbnail ";
$query_insert_pt .= "
,x_thumbnail_label ";
$query_insert_pt .= "
,x_url_key ";
Page 8

magento_produtos_atualizar_openerp.php
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479

$query_insert_pt .= "
,x_description ";
$query_insert_pt .= "
,x_short_description ";
$query_insert_pt .= "
,x_cores ";
$query_insert_pt .= "
,x_enable_zoom_plugin ";
$query_insert_pt .= "
,x_status ";
$query_insert_pt .= "
,x_tamanhos ";
$query_insert_pt .= "
,x_special_from_date ";
$query_insert_pt .= "
,x_special_to_date ";
$query_insert_pt .= " ) VALUES ( ";
$query_insert_pt .= "
1 ";
$query_insert_pt .= "
,now() ";
$query_insert_pt .= "
,now() ";
$query_insert_pt .= "
,1 ";
$query_insert_pt .= "
,0 ";
$query_insert_pt .= "
,".$row["price"]." ";
$query_insert_pt .= "
,0 ";
$query_insert_pt .= "
,0 ";
$query_insert_pt .= "
,".$row["cost"]." ";
$query_insert_pt .= "
,'fixed' ";
$query_insert_pt .= "
,1 ";
$query_insert_pt .= "
,'standard' ";
$query_insert_pt .= "
,1 ";
$query_insert_pt .= "
,'".utf8_encode($sistema->converter_caracteres_especiais_html($row["name"]))."' ";
480
$query_insert_pt .= "
,1 ";
481
$query_insert_pt .= "
,0 ";
482
$query_insert_pt .= "
,'true' ";
483
$query_insert_pt .= "
,1 ";
484
$query_insert_pt .= "
,1 ";
485
$query_insert_pt .= "
,'sellable' ";
486
$query_insert_pt .= "
,1 ";
487
$query_insert_pt .= "
,1 ";
488
$query_insert_pt .= "
,'false' ";
489
$query_insert_pt .= "
,'product' ";
490
$query_insert_pt .= "
,7 ";
491
$query_insert_pt .= "
,'buy' ";
492
$query_insert_pt .= "
,'make_to_order' ";
493
$query_insert_pt .= "
,".$row["entity_id"]." ";
494
$query_insert_pt .= "
,'".utf8_encode($row["sku"])."' ";
495
$query_insert_pt .= "
,'".$row["created_at"]."' ";
496
$query_insert_pt .= "
,'".$row["updated_at"]."' ";
497
$query_insert_pt .= "
,".$row["cost"]." ";
498
$query_insert_pt .= "
,".$row["price"]." ";
499
$query_insert_pt .= "
,".$row["special_price"]." ";
500
$query_insert_pt .= "
,".$row["weight"]." ";
501
$query_insert_pt .= "
,'".$row["image"]."' ";
502
$query_insert_pt .= "
,'".$row["image_label"]."' ";
503
$query_insert_pt .= "
,'".utf8_encode($sistema->converter_caracteres_especiais_html($row["meta_description"]))."'
";
504
$query_insert_pt .= "
,'".utf8_encode($sistema->converter_caracteres_especiais_html($row["meta_title"]))."' ";
505
$query_insert_pt .= "
,'".utf8_encode($sistema->converter_caracteres_especiais_html($row["name"]))."' ";
506
$query_insert_pt .= "
,'".$row["small_image"]."' ";
507
$query_insert_pt .= "
,'".$row["small_image_label"]."' ";
508
$query_insert_pt .= "
,'".$row["thumbnail"]."' ";
509
$query_insert_pt .= "
,'".$row["thumbnail_label"]."' ";
510
$query_insert_pt .= "
,'".$row["url_key"]."' ";
511
$query_insert_pt .= "
,'".utf8_encode($sistema->converter_caracteres_especiais_html($row["description"]))."' ";
512
$query_insert_pt .= "
Page 9

magento_produtos_atualizar_openerp.php

,'".utf8_encode($sistema->converter_caracteres_especiais_html($row["short_description"]))."'
";
513
$query_insert_pt .= "
,".$row["cores"]." ";
514
$query_insert_pt .= "
,".$row["enable_zoom_plugin"]." ";
515
$query_insert_pt .= "
,".$row["status"]." ";
516
$query_insert_pt .= "
,".$row["tamanhos"]." ";
517
$query_insert_pt .= "
,'".$row["special_from_date"]."' ";
518
$query_insert_pt .= "
,'".$row["special_to_date"]."' ";
519
$query_insert_pt .= " ) ";
520
$dal_insert_pt = new dal();
521
$query = $query_insert_pt;
522
$product_template_id = $dal_insert_pt->inserir_registro_openerp($query);
523
524
# incluindo registro na tabele product_product (busca id_magento)
525
if(strlen($row["sku"])==13){
526
$ean13 = utf8_encode($row["sku"]);
527
$default_code = "";
528
}else{
529
$ean13 = "";
530
$default_code = utf8_encode($row["sku"]);
531
}
532
$query_insert_pp = "";
533
$query_insert_pp .= " INSERT INTO product_product (";
534
$query_insert_pp .= "
create_uid ";
535
$query_insert_pp .= "
,create_date ";
536
$query_insert_pp .= "
,write_date ";
537
$query_insert_pp .= "
,write_uid ";
538
$query_insert_pp .= "
,color ";
539
$query_insert_pp .= "
,price_extra ";
540
$query_insert_pp .= "
,name_template ";
541
$query_insert_pp .= "
,active ";
542
#$query_insert_pp .= "
,image_small ";
543
$query_insert_pp .= "
,product_tmpl_id ";
544
$query_insert_pp .= "
,price_margin ";
545
$query_insert_pp .= "
,track_outgoing ";
546
$query_insert_pp .= "
,track_incoming ";
547
$query_insert_pp .= "
,valuation ";
548
$query_insert_pp .= "
,track_production ";
549
$query_insert_pp .= "
,ean13 ";
550
$query_insert_pp .= "
,default_code ";
551
$query_insert_pp .= " ) VALUES ( ";
552
$query_insert_pp .= "
1 ";
553
$query_insert_pp .= "
, now() ";
554
$query_insert_pp .= "
, now() ";
555
$query_insert_pp .= "
,1 ";
556
$query_insert_pp .= "
,0 ";
557
$query_insert_pp .= "
,0 ";
558
$query_insert_pp .= "
,'".utf8_encode($sistema->converter_caracteres_especiais_html($row["name"]))."' ";
559
$query_insert_pp .= "
,'true' ";
560
#$query_insert_pp .= "
,'' ";
561
$query_insert_pp .= "
,".$product_template_id." ";
562
$query_insert_pp .= "
,1 ";
563
$query_insert_pp .= "
,'false' ";
564
$query_insert_pp .= "
,'false' ";
565
$query_insert_pp .= "
,'manual_periodic' ";
566
$query_insert_pp .= "
,'false' ";
567
$query_insert_pp .= "
,'".$ean13."' ";
568
$query_insert_pp .= "
,'".$default_code."' ";
569
$query_insert_pp .= " )";
570
$dal_insert_pp = new dal();
571
$query = $query_insert_pp;
Page 10

magento_produtos_atualizar_openerp.php
572
$product_product_id = $dal_insert_pp->inserir_registro_openerp($query);
573
574
# totalizando contador de inclusao
575
$registros_incluidos += 1;
576
}
577
578
# incrementando contadores
579
$registros_lidos += 1;
580
581 }
582
583 # ecibio dos totalizadores
584 $mensagem = "==================================================================\n";
585 echo $mensagem;
586 $mensagem = " Totalizadores\n";
587 echo $mensagem;
588 $mensagem = "------------------------------------------------------------------\n";
589 echo $mensagem;
590 $mensagem = " # produtos lidos: ".$registros_lidos."\n";
591 echo $mensagem;
592 $mensagem = "------------------------------------------------------------------\n";
593 echo $mensagem;
594 $mensagem = "Registros encontrados (Busca entity_id):
".$registros_encontrados_id_magento."\n";
595 echo $mensagem;
596 $mensagem = "Registros encontrados (EAN13): ".$registros_encontrados_ean13."\n";
597 echo $mensagem;
598 $mensagem = "Registros encontrados (default_code):
".$registros_encontrados_default_code."\n";
599 echo $mensagem;
600 $mensagem = "Registros incluidos: ".$registros_incluidos."\n";
601 echo $mensagem;
602
603 $mensagem = "Registros alterados - product_template (Busca entity_id):
".$registros_atualizados_product_template_id_magento."\n";
604 echo $mensagem;
605 $mensagem = "Registros alterados - product_template (Busca entity_id):
".$registros_atualizados_product_product_id_magento."\n";
606 echo $mensagem;
607
608 $mensagem = "Registros alterados - product_template (Busca ean13):
".$registros_atualizados_product_template_ean13."\n";
609 echo $mensagem;
610 $mensagem = "Registros alterados - product_template (Busca ean13):
".$registros_atualizados_product_product_ean13."\n";
611 echo $mensagem;
612
613 $mensagem = "Registros alterados - product_template (Busca default_code):
".$registros_atualizados_product_template_default_code."\n";
614 echo $mensagem;
615 $mensagem = "Registros alterados - product_template (Busca default_code):
".$registros_atualizados_product_product_default_code."\n";
616 echo $mensagem;
617
618 $mensagem = "------------------------------------------------------------------\n";
619 echo $mensagem;
620
621 # Fim do script
622 $mensagem = "\n\n";
623 echo $mensagem;
624 $mensagem = formata_data_extenso(date('Y-m-d H:i:s'))." - "."Fim do script...\n";
625 echo $mensagem;
Page 11

magento_produtos_atualizar_openerp.php

626 $mensagem = formata_data_extenso(date('Y-m-d H:i:s'))." "."magento_produtos_atualizar_openerp.php: Captura atributos dos produtos Magento e
atualiza no OpenERP.\n";
627 echo $mensagem;
628
629
630 /**
631 * Esta funo retorna uma data escrita da seguinte maneira:
632 * Exemplo: Tera-feira, 17 de Abril de 2007
633 * @author Leandro Vieira Pinho [http://leandro.w3invent.com.br]
634 * @param string $strDate data a ser analizada; por exemplo: 2007-04-17 15:10:59
635 * @return string
636 */
637 function formata_data_extenso($strDate)
638 {
639
// Array com os dia da semana em portugus;
640
$arrDaysOfWeek = array("Dom","Seg","Ter","Qua","Qui","Sex","Sab");
641
// Array com os meses do ano em portugus;
642
$arrMonthsOfYear = array(1 =>
"Janeiro","Fevereiro","Maro","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","
Novembro","Dezembro");
643
// Descobre o dia da semana
644
$intDayOfWeek = date("w",strtotime($strDate));
645
// Descobre o dia do ms
646
$intDayOfMonth = date("d",strtotime($strDate));
647
// Descobre o ms
648
$intMonthOfYear = date("n",strtotime($strDate));
649
// Descobre o ano
650
$intYear = date("Y",strtotime($strDate));
651
//Retorna tambm a hora (Adicionado por Rafael (ebalaio.com)
652
$intHour = substr($strDate,10,20);
653
// Formato a ser retornado
654
return utf8_decode($arrDaysOfWeek[$intDayOfWeek]) . ", " . $intDayOfMonth . " de " .
$arrMonthsOfYear[$intMonthOfYear] . " as " . $intYear . ", ".$intHour;
655 }
656 ?>

Page 12

S-ar putea să vă placă și