Ler Arquivo XLS no Scriptcase

Bom dia pessoal,

Estou com uma tarefa de descobrir como fazer para que o Scriptcase leia uma planilha de Excel e não tenho ideia por onde começo.

Agradeço muito se puderem me ajudar.

Att,
Moisés

https://suporte.scriptcase.com.br/pt-br/article/688-aplicacao-com-importacao-excel

Obrigado Ronyan Alves,

Já tinha visto essa função no scriptcase 8, só que no local onde eu preciso realizar essa tarefa de importar registros de uma planilha excel, utilizando essa maneira estamos tendo muitos problemas com o servidor e se tornou menos interessante.

No caso, teria que realmente ser feito na mão essa importação dos dados.

Ola

Ve se ajuda .

no onscriptini : require_once('../../../..'.$this->Ini->path_prod.'/third/phpexcel/PHPExcel.php');

no OnValidate :

// Criado tabela planilha1 no bd da disk2 campos nf, serie_nf, data_nf, frete

// para importar o nome da planilha não pode ter espaço e ser extensão xls
// a coluna de titulos não pode ter filtros
// os campos devem ser exatamente os seguintes nomes : NF, SERIE_NF, DATA_NF, FRETE

sc_exec_sql(“delete disk2.dbo.planilha1”);

$objReader = new PHPExcel_Reader_Excel5();
$objReader->setReadDataOnly(true);

$objPHPExcel = $objReader->load("…/…/…/tmp/".$this->documento_ul_name);

$worksheetData = $objReader->listWorksheetInfo("…/…/…/tmp/".$this->documento_ul_name);

$totalRows = $worksheetData[0][‘totalRows’];
$totalColumns = $worksheetData[0][‘totalColumns’];
$lastColumn = $objPHPExcel->getActiveSheet()->getHighestColumn();
$sheet = $objPHPExcel->getSheet(0);

$columnNames = “”;
$rowDate = “”;

for($colum=0;$colum<$totalColumns;$colum++)
{
if($colum==$totalColumns-1)
{
$columnNames.= utf8_decode($objPHPExcel->getActiveSheet()->getCellByColumnAndRow($colum, 1)->getValue());
}
else
{
$columnNames.= utf8_decode($objPHPExcel->getActiveSheet()->getCellByColumnAndRow($colum, 1)->getValue()).",";

}

}

for($row =2; $row <= $totalRows; $row++)
{
for($colum=0;$colum < $totalColumns;$colum++)
{
if($colum == $totalColumns-1)
{
$rowDate .= “’”.utf8_decode($objPHPExcel->getActiveSheet()->getCellByColumnAndRow($colum, $row)->getValue())."’";
}
else
{
$rowDate .= “’”.utf8_decode($objPHPExcel->getActiveSheet()->getCellByColumnAndRow($colum, $row)->getValue())."’,";
}
}

$_SQL_Command= "insert into disk2.dbo.planilha1 (".$columnNames.") values (".$rowDate.")";
sc_exec_sql($_SQL_Command);


$rowDate="";

}

Olá, sou novo aqui, gostaria de uma ajuda de vocês.
Moacir de Oliveira, eu segui o exemplo do video, e fiz exatamente o que você postou,
porém na minha planilha tem dois campos com data, emissão e vencimento
Ex: Vencimento: 18/06/2017 Pagamento: 05/06/2017 mas quando executo a aplicacao de controle, coloquei um echo para
ver o que tava retornando
na data ao invés dos valores acima traz dessa forma :
Vencimento: ‘42904’ Pagamento: ‘42891’
o insert vem assim:
INSERT INTO clientes_pagos(Id_Cliente,Razao,Vencimento,Pagamento,Valor,Juros,Abatimento,Total) VALUES (‘5343’,‘NOME DO CLIENTE’,‘42904’,‘42891’,‘298.14’,‘23.6’,‘0’,‘321.74’)