Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ola, Pessoal.. Uma Otima Sexta Feira a Todos.
Meu Problema, quando vou passar valor via Brawser usando o AMFPHP, consigo fazer Update Normal com excessção a um campo "CHNFE / varchar (44)".. troca os valores.
Normal: 35100759261388000470550010000132527509956546 "" Quando executo o Update salva desta forma no banco "3.51008e+043"
update NFELOTE set CSTAT_NFE='$cstat_nfe', XMOTIVO_NFE='$xmotivo_nfe', PROTOCOLO_NFE='$protocolo_nfe', DIGVAL_NFE='$digval_nfe',
CHNFE='$chnfe', VERAPLIC='$veraplic' where CODSEQ='$codlotenfe'
.
2 Problema
Quando tento Executar o Update via aplicação não salva nada no banco, isso quando ponho os valores correto.
X
Agora seu por em todos os campos TextInput o valor 1, salva normal .. update executa com sucesso.
Não estou conseguindo ver onde esta esse problema.. problema de string com Int...
Method
<mx:method
name="updateNota"
result="{alterar_Notas(event)}"
fault="mx.controls.Alert.show('Erro ao Atualizar Nota'+event.fault.faultString)"
>
<mx:arguments>
<veraplic> {veraplic.text} </veraplic>
<chnfe> {chnfe.text} </chnfe>
<digval_nfe> {digval.text} </digval_nfe>
<protocolo_nfe> {protocolo.text} </protocolo_nfe>
<xmotivo_nfe> {xmotivo.text} </xmotivo_nfe>
<cstat_nfe> {cstat.text} </cstat_nfe>
<codlotenfe> {codlotenfe.text} </codlotenfe>
</mx:arguments>
</mx:method>Ja Debuguei o valor vem normal.. O problema esta em dois campos
XMOTIVE_NFE e VERAPLIC .. quando eu digito numero funciona normal salva.. do jeito que eu pretendo.. agora se eu Digitar qualquer string não funciona não faz update.. parece que não passa nenhum valor.
>
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:local="*"
layout="absolute" viewSourceURL="srcview/index.html"
creationComplete="init();" >
<mx:RemoteObject
id="ro_nota"
destination="amfphp"
source="manutencao_notas"
showBusyCursor="true">
<mx:method
name="pesquisaNotas"
result="{resultado_Notas(event)}"
fault="mx.controls.Alert.show('Erro ao Mostrar Nota'+event.fault.faultString)"
>
<mx:arguments>
<nota>{pesquisaNota.text}</nota>
<filial>{tx_cambiNota.text}</filial>
</mx:arguments>
</mx:method>
<mx:method
name="updateNota"
result="{alterar_Notas(event)}"
fault="mx.controls.Alert.show('Erro ao Atualizar Nota'+event.fault.faultString)"
>
<mx:arguments>
<veraplic> {veraplic.text} </veraplic>
<chnfe> {chnfe.text} </chnfe>
<digval_nfe> {digval.text} </digval_nfe>
<protocolo_nfe> {protocolo.text}</protocolo_nfe>
<xmotivo_nfe> {xmotivo.text} </xmotivo_nfe>
<cstat_nfe> {cstat.text} </cstat_nfe>
<codlotenfe> {codlotenfe.text} </codlotenfe>
</mx:arguments>
</mx:method>
</mx:RemoteObject>
<mx:Script source="funcoes_nota.as" />
<mx:NumberValidator source="{pesquisaNota}" property="text" invalidCharError="Entre apenas com números!"
requiredFieldError="Esse Campo é Obrigatório!" />
<mx:Canvas x="0" y="0" width="100%" height="63">
<mx:ApplicationControlBar x="31" y="10" width="95%" dock="true" >
<mx:RadioButton label="N2" click="tx_cambiNota.text = '2'" value="2" groupName="Nota" selected="true"/>
<mx:RadioButton label="N3" click="tx_cambiNota.text = '3'" value="3" groupName="Nota"/>
<mx:RadioButton label="N4" click="tx_cambiNota.text = '4'" value="4" groupName="Nota"/>
<mx:TextInput width="132" id="pesquisaNota" />
<mx:Button label="Nota" click="pesquisar_clientes()" />
<mx:Label text="Chave NFE em Duplicidade"
id="l_dupli" fontSize="12" />
<mx:TextInput id="tx_cambiNota" visible="false" width="93"/>
</mx:ApplicationControlBar>
</mx:Canvas>
<mx:Canvas x="0" y="71" width="100%" height="68">
<mx:DataGrid x="32" y="10" height="45" width="95%" id="datagrid_notas" dataProvider="{array_notas}">
<mx:columns>
<mx:DataGridColumn width="100" headerText="Nº NFE" dataField="notanum"/>
<mx:DataGridColumn width="300" headerText="COD CLIENTE" dataField="cliente"/>
<mx:DataGridColumn width="300" headerText="CHAVE DANFE" dataField="idnfe"/>
<mx:DataGridColumn width="100" headerText="COD NFE" dataField="codnfe"/>
<mx:DataGridColumn width="100" headerText="COD LOTE NFE" dataField="codlotenfe"/>
<mx:DataGridColumn width="100" headerText="DT SAIDA" dataField="saida"/>
</mx:columns>
</mx:DataGrid>
</mx:Canvas>
<mx:Canvas x="30" y="147" width="100%" height="430">
<mx:TabNavigator id="tab"
width="100%"
height="400" y="4">
<local:IFrame id="test1"
label="Google"
source="[http://nfe.fazenda.sp.gov.br/ConsultaNFe/consulta/publica/ConsultarNFe.aspx"](http://nfe.fazenda.sp.gov.br/ConsultaNFe/consulta/publica/ConsultarNFe.aspx)
width="100%"
height="200%"
/>
<local:IFrame id="test2"
label="Receita"
source="[http://www.google.com.br"](http://www.google.com.br)
width="100%"
height="100%"
/>
</mx:TabNavigator>
</mx:Canvas>
<mx:Canvas x="0" y="585" width="100%" height="72">
<mx:DataGrid x="32" y="10" height="45" width="95%" id="datagrid_notas1" dataProvider="{array_notas}">
<mx:columns>
<mx:DataGridColumn width="100" headerText="CODIGO" dataField="codigo"/>
<mx:DataGridColumn width="400" headerText="CHAVE DANFE / chave alt" dataField="idnfe_mod"/>
<mx:DataGridColumn width="250" headerText="COD NFE / codigo alterado" dataField="codnfe_mod"/>
<mx:DataGridColumn width="250" headerText="COD LOTE NFE" dataField="codlotenfe" />
</mx:columns>
</mx:DataGrid>
</mx:Canvas>
<mx:Canvas x="0" y="665" width="100%" height="72">
</mx:Canvas>
<mx:Grid x="30" y="679" width="100%" >
<mx:GridRow width="100%" height="100%">
<mx:GridItem> <mx:Label text="CSTAT_NFE" /> </mx:GridItem>
<mx:GridItem> <mx:Label text="XMOTIVO_NFE" /> </mx:GridItem>
<mx:GridItem> <mx:Label text="PROTOCOLO_NFE" /> </mx:GridItem>
<mx:GridItem> <mx:Label text="DIGVAL_NFE" /> </mx:GridItem>
<mx:GridItem> <mx:Label text="CHNFE" /> </mx:GridItem>
<mx:GridItem> <mx:Label text="VERAPLIC" /> </mx:GridItem>
</mx:GridRow>
<mx:GridRow width="100%" height="100%" >
<mx:GridItem> <mx:TextInput id="cstat" /> </mx:GridItem>
<mx:GridItem> <mx:TextInput id="xmotivo" /> </mx:GridItem>
<mx:GridItem> <mx:TextInput id="protocolo" /> </mx:GridItem>
<mx:GridItem> <mx:TextInput id="digval" /> </mx:GridItem>
<mx:GridItem> <mx:TextInput id="chnfe" /> </mx:GridItem>
<mx:GridItem> <mx:TextInput id="veraplic" /> </mx:GridItem>
<mx:GridItem> <mx:TextInput id="codlotenfe" /> </mx:GridItem>
</mx:GridRow>
</mx:Grid>
<mx:Button x="500" y="736" label="ATUALIZAR" click="altetar_nota();"/>
</mx:Application>
Codigo AS.
[bindable]
public var array_notas:Array;
public function alterar_Notas(event:ResultEvent):void
{
array_notas= event.result.dados;
}
public function altetar_nota():void
{
ro_nota.updateNota.send();
}Matheus, Resolvido... Obrigado..
Solução..
Coloquei os campos em ordem conforme a classe do PHP e no Flex formatei o parametro CHNFE.
<mx:arguments>
<cstat_nfe> {cstat.text} </cstat_nfe>
<xmotivo_nfe> {xmotivo.text} </xmotivo_nfe>
<protocolo_nfe> {protocolo.text} </protocolo_nfe>
<digval_nfe> {digval.text} </digval[b]_nfe>
<chnfe> {chnfe.text.toString()} [/b]</chnfe> // formatei o campo como toString()
<veraplic> {veraplic.text} </veraplic>
<codlotenfe> {codlotenfe.text} </codlotenfe>
</mx:arguments>É isso ai, por isso o parametro tava indo errado.Faltou o cast.
Abs
Debug esse valor ai no flex antes de ele ser enviado para o php, e poste o código completo, para que a gnt possa visualizar.
Abs