Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bom gostaria de ajuda.
Preciso ao carregar o script que ele check uma tabela Liberação no qlikview e não deixe carregar.
Lembrando que o campo liberação 5 da Tabela Sql, deverá ser o mesmo da Liberação
Campo: Liberação5
A lógica é seguinte: Caso a TabelaSql Campo: Liberação5 seja diferente da Tabela Liberação, que ele não carreque o script.
Existe como?
OLEDB CONNECT32 TO [Provider=SQLOLEDB.1;Persist Security Info=True;User ID=sa;Initial Catalog=S9_Controle;Data Source=localhost\shopcontrol9;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=AGNALDO;Use Encryption for Data=False;Tag with column collation when possible=False] (XPassword is caAMaJVMODaCWYIGTRCB);
TabelaLiberação:
SQL SELECT "Data_Alteracao",
"Data_Validade",
Liberacao1,
Liberacao2,
Liberacao3,
Liberacao4,
Liberacao5,
Ordem,
"Ordem_Funcionario_Alteracao",
Validacao
FROM "S9_Controle".dbo.Liberacao;
LiberacaoTemp:
LOAD * INLINE [
Liberacao5,
SZLC
];
Section Application;
Segue em anexo Agnaldo
Você terá que adaptar um pouco o script, mas basicamente é:
Me passarm um modelo assim, mas não funcionou..
Tem como melhorar...
SET vBloqueiaQVW = 'SZLC';
if vBloqueiaQVW <> 'SZLC' THEN
TRACE 'Liberado';
ELSE
TRACE 'Bloqueado...';
ENDIF
Agnaldo, qual que é a lógica que você precisa?
Verificar se o campo Liberacao5 for diferente de 'SZLC', se for diferente carrega a tabela, caso contrário não carrega?
Yuri é isso.
Se for igual carregar, se for diferente não carregar..
Segue exemplo
Yuri, eu acho que devo está fazendo algo errado.
Seque o arquivo
http://consultoriasoft.com.br/arquivos/121.zip
A ideia é simples, Tenho um tabela sql server chamada liberacao5
a cada 03 meses este numero é trocado.
Eu vou digitar este número dentro do script do qlikview.
Então quando for carregar o script e campo liberacao5 for diferente liberacao5 que eu digitei ele não carreque o script.
Talvez você tenha me passado corretamente. Eu que não tenha feito de forma correta.
OLEDB CONNECT32 TO [Provider=SQLOLEDB.1;Persist Security Info=True;User ID=sa;Initial Catalog=S9_Real;Data Source=localhost\shopcontrol9;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=AGNALDO;Use Encryption for Data=False;Tag with column collation when possible=False] (XPassword is EbWbXJVMODaCWYIGTJQA);
LOAD * INLINE [
Liberacao1, Liberacao2, Liberacao3, Liberacao4, Liberacao5, Ordem
BLA, BLE, BLI, BLO, SZLC, BLU
];
IF FieldValue('Liberacao5',1) = 'SZLC' THEN
TRACE
LOAD Ordem,
Liberacao1,
Liberacao2,
Liberacao3,
Liberacao4,
Liberacao5,
"Data_Validade",
"Data_Alteracao",
"Ordem_Funcionario_Alteracao",
Validacao;
SQL SELECT *
FROM "S9_Controle".dbo.Liberacao;
ELSE
TRACE NÃO VAI CARREGAR NADA!;
END IF
DROP TABLE TabelaLiberação;
Segue em anexo Agnaldo
Você terá que adaptar um pouco o script, mas basicamente é:
Obrigado Yuri 150% certo.
Só tenho que colocar o script dentro da rotina e tudo certo.
Não alterou a linha ok 100%
Alterei o campo: 100% ok
OLEDB CONNECT32 TO [Provider=SQLOLEDB.1;Persist Security Info=True;User ID=sa;Initial Catalog=S9_Real;Data Source=localhost\shopcontrol9;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=AGNALDO;Use Encryption for Data=False;Tag with column collation when possible=False] (XPassword is EbWbXJVMODaCWYIGTJQA);
Informacao_A_Ser_Verificada:
LOAD * INLINE [
CampoDigitado
SZLM
];
Informacao_Do_Banco:
SQL SELECT
Liberacao5
FROM "S9_Controle".dbo.Liberacao;
IF FieldValue('CampoDigitado',1) = FieldValue('Liberacao5',1) THEN
TRACE Carrega a tabela!;
Liberacao:
LOAD
Ordem,
Liberacao1,
Liberacao2,
Liberacao3,
Liberacao4,
Liberacao5,
"Data_Validade",
"Data_Alteracao",
"Ordem_Funcionario_Alteracao",
Validacao;
SQL SELECT *
FROM "S9_Controle".dbo.Liberacao;
OLEDB CONNECT32 TO [Provider=SQLOLEDB.1;Persist Security Info=True;User ID=sa;Initial Catalog=S9_Real;Data Source=localhost\shopcontrol9;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=AGNALDO;Use Encryption for Data=False;Tag with column collation when possible=False] (XPassword is SEDHWJVMODaCWYIGTRBA);
//-------- Start Multiple Select Statements ------
Classes:
LOAD Ordem,
Codigo,
Nome,
Deposito,
"Nao_Envia_Web",
"Data_Alteracao",
Inativo,
"Ordem_Funcionario_Alteracao",
Validacao;
SQL SELECT *
FROM "S9_Real".dbo.Classes;
//-------- End Multiple Select Statements ------
ELSE
TRACE NÃO VAI CARREGAR NADA!;
END IF
DROP TABLE Informacao_A_Ser_Verificada, Informacao_Do_Banco;