Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it L'avatar di sebamix
    Registrato dal
    Aug 2000
    Messaggi
    1,028

    [CR] Definitivo! campi memo e formule

    PREMESSA
    Posto questo topic per vari motivi:
    1) Altri come me avranno sto problema con le benedette formule ed i
    campi memo, quindi può essere di aiuto;
    2) Esempio per chi non conosce google e le sue potenzialità;
    3) Magari qualcuno ha qualche altro suggerimento;
    FINE PREMESSA

    I FATTI
    Crystal Report considera un qualsiasi campo di testo
    con dimensione superiore ai 254 caratteri, campi blob
    o campi memo (true memo) come campi memo.

    CR, non conoscendo la dimensione fisica di questi campi,
    non ne permette l'utilizzo nelle formule.

    Questo è molto scomodo, soprattutto se è veramente necessario
    usare un campo memo nelle formule (per testare se, ad esempio,
    è null o contiene o meno una stringa).

    (Letto in giro : "...This is a known issue with CrystalReports version 8.5
    and earlier and has been tracked. The CR Track ID
    is: ADAPT00010707. ..."
    http://216.239.39.100/search?q=cache...hl=en&ie=UTF-8
    );

    NOTA: In CR 9 si possono usare campi memo nelle formule.Era ora!
    (http://216.239.51.100/search?q=cache...hl=en&ie=UTF-8);

    Ci sono comunque alcuni work-around applicabili:

    1) Nelle funzioni l'istruzione IsNull accetta campi memo
    (http://support.crystaldecisions.com/kbase/c2007285.asp);
    Testato, funziona.

    2) Se possibile si può modificare la stringa SQL che pesca
    i dati aggiungendo tra i campi della SELECT un "LEFT(NomeCampoMemo, 254) As NuovoNome",
    si potrà quindi utilizzare "NuovoNome" nelle formule (almeno per vedere se esiste o meno)
    (http://www.experts-exchange.com/Data..._20347923.html);
    Testato, è possibile;

    3) Usare funzioni relative al database
    "...You use a SQL expression field within Crystal, and fool
    Crystal into using the memo field._ Crystal has access to the
    SQL Substring() function, which can take characters out of
    any character field..."
    codice:
    {fn SUBSTRING ( Employees."Notes" , 10 , 60 ) }
    Ma naturalmente dicono che funzioni solo con SQL-Server e (forse) ORACLE.
    Non con Access.
    Non testato;
    (http://www.kenhamady.com/news0206.html)

    4) Abbinare a ogni campo memo un campo booleano
    dove mettete True se il campo memo è impostato, altrimenti False.
    (http://groups.google.com/groups?q=cr...eja.com&rnum=4)
    Non occorre testarlo, funziona di sicuro, ma comporta scomode modifiche al
    programma che gestisce il database.

    5) Create una query (access) o una vista (selserver ?) in cui
    caricate tutti i campi della tabella e in più lo stesso campo memo limitato
    a 254 caratteri. Es.:
    codice:
    SELECT *, left(NomeCampoMemo,254) AS NuovoNome FROM Tabella
    Poi nel report, invece di fare riferimento alla tabella,
    fate riferimento alla query/vista.
    (http://groups.google.com/groups?hl=e...lg%26rnum%3D15);
    Questo lo devo ancora testare ma promette bene.

  2. #2
    Utente di HTML.it L'avatar di sebamix
    Registrato dal
    Aug 2000
    Messaggi
    1,028

    Re: [CR] Definitivo! campi memo e formule

    Originariamente inviato da sebamix
    ...

    5) Create una query (access) o una vista (sQlserver ?) in cui
    caricate tutti i campi della tabella e in più lo stesso campo memo limitato
    a 254 caratteri. Es.:
    codice:
    SELECT *, left(NomeCampoMemo,254) AS NuovoNome FROM Tabella
    Poi nel report, invece di fare riferimento alla tabella,
    fate riferimento alla query/vista.

    ...
    No, non funziona. Se i campi "fittizi" che si vanno ad aggiungere sono di tipo testo, a quanto pare CR li considera pur sempre memo... Io ho risolto (Access) con:
    codice:
    SELECT *, IIF(NomeCampoMemo='',1,0) AS NuovoNome FROM Tabella
    In questo modo (finalmente) ho posso testare se un campo memo è presente o meno.

    :mavieni:

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 © 2024 vBulletin Solutions, Inc. All rights reserved.