Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1

    Tipo non corrispondente

    Non riesco a capire perchè in questa formattazione:
    codice:
    imponibile_04 = FormatNumber((RSiva("Totale")*100/104),2)
    mi esca errore:
    Tipo non corrispondente: 'FormatNumber'.

    Come mai?
    Succede anche con:
    codice:
    imponibile_04 = FormatNumber(RSiva("Totale")*100/104 , 2)
    oppure con
    codice:
    imponibile_04 = FormatNumber(RSiva("Totale")*100/104,2)
    Nat Pharma Snc - www.natpharma.it -www.birrapercani.it
    Produzione di integratori fitoterapici per uso veterinario composti interamente da materie prime di origine vegetale



  2. #2
    Prima di fare la formatNumber verifica che ogni dato sia numerico...

  3. #3
    Si il dato è numerico con la virgola e molti decimali, ma io vorrei limitarlo a 2 decimali essendo un prezzo in euro.

    Però può capitare che esso sia NULL, nel senso che dalla query non si estragga nessun valore. Forse è qui il problema.
    Come posso ovviare?

    Il codice è:
    codice:
    sqlString = "SELECT SUM(prodotti_prezzo) as Totale " &_
    	"FROM  prodotti, ordinidettaglio, ordini " &_
    	"WHERE ordinidettaglio_ordineID = " & ordine &_
    	" AND ordinidettaglio_prodottoID = prodotti_id"	&_
    	" AND prodotti_IVA = 4" &_
    	" AND ordini_id =" & ordine 
    SET RSiva = Con.Execute( sqlString )
    WHILE NOT RSiva.EOF
    imponibile_04 = FormatNumber((RSiva("Totale")*100/104),2)
    RSiva.MOVENEXT
    WEND
    Grazie per l'aiuto
    Nat Pharma Snc - www.natpharma.it -www.birrapercani.it
    Produzione di integratori fitoterapici per uso veterinario composti interamente da materie prime di origine vegetale



  4. #4
    Infatti. Se è NULL o vuoto da errore.
    Fai un controllo prima se è NULL o vuoto dai zero di default.

  5. #5
    Qualcosa di questo tipo:
    codice:
    sqlString = "SELECT SUM(prodotti_prezzo) as Totale " &_
    	"FROM  prodotti, ordinidettaglio, ordini " &_
    	"WHERE ordinidettaglio_ordineID = " & ordine &_
    	" AND ordinidettaglio_prodottoID = prodotti_id"	&_
    	" AND prodotti_IVA = 4" &_
    	" AND ordini_id =" & ordine 
    SET RSiva = Con.Execute( sqlString )
    WHILE NOT RSiva.EOF
    
    IF imponibile_04 = " " THEN
    	imponibile_04 = 0
    ELSE
    	imponibile_04 = FormatNumber((RSiva("Totale")*100/104),2) 	
    END IF	
    
    RSiva.MOVENEXT
    WEND
    mi sembra corretto solo che mi dà ancora "tipo non corrispondente" !!

    :master:
    Nat Pharma Snc - www.natpharma.it -www.birrapercani.it
    Produzione di integratori fitoterapici per uso veterinario composti interamente da materie prime di origine vegetale



  6. #6
    Originariamente inviato da fruttosio79
    Qualcosa di questo tipo:
    codice:
    sqlString = "SELECT SUM(prodotti_prezzo) as Totale " &_
    	"FROM  prodotti, ordinidettaglio, ordini " &_
    	"WHERE ordinidettaglio_ordineID = " & ordine &_
    	" AND ordinidettaglio_prodottoID = prodotti_id"	&_
    	" AND prodotti_IVA = 4" &_
    	" AND ordini_id =" & ordine 
    SET RSiva = Con.Execute( sqlString )
    WHILE NOT RSiva.EOF
    
    IF imponibile_04 = " " THEN
    	imponibile_04 = 0
    ELSE
    	imponibile_04 = FormatNumber((RSiva("Totale")*100/104),2) 	
    END IF	
    
    RSiva.MOVENEXT
    WEND
    mi sembra corretto solo che mi dà ancora "tipo non corrispondente" !!

    :master:
    Voi cosa mi consigliate di fare per permettermi di formattare imponibile_04 anche quando vuoto?
    Non ho proprio idea :master:
    Nat Pharma Snc - www.natpharma.it -www.birrapercani.it
    Produzione di integratori fitoterapici per uso veterinario composti interamente da materie prime di origine vegetale



  7. #7
    Ricapitolando, io devo formattare un valore che estraggo da un recordset. Tale valore è un numero ed io devo formattarlo con 2 decimali e fino a qui tutto ok.
    Può capire a volte che tale valore sia vuoto per cui se provo a formattarlo mi dà errore nella pagina.

    Questo è il codice che uso:
    codice:
    sqlString = "SELECT SUM(prodotti_prezzo) as Totale " &_
    	"FROM  prodotti, ordinidettaglio, ordini " &_
    	"WHERE ordinidettaglio_ordineID = " & ordine &_
    	" AND ordinidettaglio_prodottoID = prodotti_id"	&_
    	" AND prodotti_IVA = 4" &_
    	" AND ordini_id =" & ordine 
    SET RSiva = Con.Execute( sqlString )
    WHILE NOT RSiva.EOF
    imponibile_04 = FormatNumber((RSiva("Totale")*100/104),2)
    RSiva.MOVENEXT
    WEND
    ed il valore che devo formattare è "imponibile_04".
    Come posso fare?

    Ciaoo
    Nat Pharma Snc - www.natpharma.it -www.birrapercani.it
    Produzione di integratori fitoterapici per uso veterinario composti interamente da materie prime di origine vegetale



  8. #8
    invece di usare

    rs("campo")

    usa

    (rs("campo") & "")

    cosi' non hai il problema del null

  9. #9
    Cioè:
    imponibile_04 = FormatNumber((RSiva("Totale")*100/104 & ""),2)
    Nat Pharma Snc - www.natpharma.it -www.birrapercani.it
    Produzione di integratori fitoterapici per uso veterinario composti interamente da materie prime di origine vegetale



  10. #10

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.