Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630

    Numerazione progressiva

    Gentili amici
    ho urgente bisogno di risolvere un problema:
    Nel db ho un campo denominato NUMERO (campo memo) dove tramite immissione da form dove voglio che inserisce una numerazione progressiva del tipo 0003, però utilizzando
    questo script:

    codice:
    Dim numero
    (la connessione è su un altro file incluso)
    sql = "SELECT * FROM autori WHERE numero LIKE '%" & numero & "%' order by id Desc" 
    
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, Conn, 3, 3
    
    rs.Fields("numero") = Cstr(RS("numero") + 1)
    la numerazione successiva me la indica invece di 0004 mi scrive solo 4, come posso ovviare al problema, considerando che voglio anche che arrivati a 0099 deve indicarmi successivamente 0100

    Grazie 1000

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Guarda se ti serve. Il codice è in vbscript, ma lo puoi convertire facilmente in javascript

    codice:
    <%
    '***************************************************************************
    'Allinea a destra la stringa A, in un campo lungo L. Gli spazi rimanenti
    'sono riempiti dal carattere R. Se la stringa è più lunga di L, viene restituita
    'l'intera stringa.
    '***************************************************************************
    Function PadR(A, L, r)
        If Len(r) = 0 Then r = " "
        If (L - Len(A)) >= 0 Then
            PadR = String(L - Len(A), r) & A
        Else
            PadR = CStr(A) 'Left(A, L)
        End If
    End Function
    
    '***************************************************************************
    'Allinea a sinistra la stringa A, in un campo lungo L. Gli spazi rimanenti
    'sono riempiti dal carattere R. Se la stringa è più lunga di L, restituisce
    'l'intera stringa
    '***************************************************************************
    Function PadL(A, L, r)
        If r = "" Then r = " "
        If (L - Len(A)) >= 0 Then
            PadL = A & String(L - Len(A), r)
        Else
            PadL = CStr(A) 'Left(A, L)
        End If
    End Function
    
    
    %>
    Pietro

  3. #3
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    L'ho trovata pure in javascript
    codice:
    //'***************************************************************************
    //'Allinea a destra la stringa a, in un campo lungo l. Gli spazi rimanenti
    //'sono riempiti dal carattere r (predefinito = spazio. 
    //'Se la stringa è più lunga di l, viene restituita
    //'la stringa troncata
    //'***************************************************************************
    function PadR(a, l, r)
    {
    	if(r == undefined) r = " ";
    	if((l - a.length) >= 0) return function() {var s = "";for(var i = 0; i < (l - a.length); i++) s += r; return s + a;}();
    	else return a.substr(0,l);
    	
    }
    Pietro

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    Grazie Piero
    per la tua risposta ma cone faccio ad implementarlo al mio script?
    Grazie
    Gino

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da djjunior
    Grazie Piero
    per la tua risposta ma cone faccio ad implementarlo al mio script?
    Grazie
    Gino
    Come tutte le cose, ragionandoci un poco

    Ti mando per ultima cosa, il codice che mi serve per inserire un id progressivo: a te vedere se ti serve

    codice:
        '----------------------------------------------------------------------------------
        'Restituisce Il prossimo Identificativo di una tabella oracle
        '----------------------------------------------------------------------------------
        Public Function ProssimoIDOracle%(ByVal StringaConnessione$, ByVal NomeTabella$, ByVal NomeCampoID$, Optional ByVal Where$ = "1=1")
            Dim sql$ = String.Format("SELECT DECODE(MAX({1}), NULL, 1, MAX({1}) + 1 ) AS PROSSIMO_ID FROM {0} WHERE {2}", NomeTabella, NomeCampoID, Where)
    
            Try
                Return CInt(RisultatoAggregazioneSQL(StringaConnessione, sql))
            Catch ex As Exception
                Throw
            End Try
    
        End Function
    
        '----------------------------------------------------------------------------------
        'Restituisce Il prossimo Identificativo di una tabella Access
        '----------------------------------------------------------------------------------
        Public Function ProssimoIDAccess%(ByVal StringaConnessione$, ByVal NomeTabella$, ByVal NomeCampoID$, Optional ByVal Where$ = "1=1")
            Dim sql$ = String.Format("SELECT IIF(ISNULL(MAX({1})),1, MAX({1}) + 1) AS PROSSIMO_ID FROM {0} WHERE {2}", NomeTabella, NomeCampoID, Where)
    
            Try
                Return CInt(RisultatoAggregazioneSQL(StringaConnessione, sql))
            Catch ex As Exception
                Throw
            End Try
    
        End Function
    Pietro

  6. #6
    Utente bannato
    Registrato dal
    Mar 2005
    Messaggi
    136
    Originariamente inviato da pietro09
    L'ho trovata pure in javascript


    Codice PHP:
    function _leftPadString(bufNCharVChar)
    {
        var 
    res buf.length;
        
        while (
    res NChar)
        {
            
    res++;
            
    buf VChar+buf ;
        }
        return(
    buf);


  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da avatar


    Codice PHP:
    function _leftPadString(bufNCharVChar)
    {
        var 
    res buf.length;
        
        while (
    res NChar)
        {
            
    res++;
            
    buf VChar+buf ;
        }
        return(
    buf);

    Mi piace, la ricopio subito nella mia libreria
    Pietro

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.