Odgovori 
Numeričko polje

-oštovanje,
Pokušavam da u funkciju stavim numeričko polje, u okviru dijaloga, u Kalku. Prethodna makro rešenja koja prebacuju sadržaj u poljima u ćeliju npr A1 u listu List1 ne daje rezultat. Javlja se samo broj nula (0). Gde grešim?
Takođe, u osobinama polja, vidim opciju Stranica (korak), o čemu je tu reč?
Citiraj ovu poruku u odgovoru

Korak određuje za koliko će se vrednost uvećati kada se klikne na strelicu u polju. Mogli bismo da ispravimo prevod. Želite li da saznate kako da pošaljete ispravku prevoda? Uopšte, i „numeričko polje“ mi se ne dopada kao termin jer iako jeste reč o polju za unos broja, prava karakteristika je da je to polje sa strelicama.

Kako glasi kod makroa koji je ranije radio?
Poseti veb stranicu korisnika
Citiraj ovu poruku u odgovoru

Sad sam stvarno zatečen. Nisam razumeo šta mislite pod strelicom. Ja
sam uzeo numeričko polje sa mišlju da je to polje koje je prilagođeno za rad sa brojevima. Molim Vas pojasnite mi to sa strelicama.
Inače kod koji sledi je korićen kod polja za tekst, sa dve verzije:
Kod:
    oCell12 = oSheet2.getCellByPosition (5, row_index ,  5, row_index)  
    oCell12.String = polje4.Text
    rem -----------------------------------------------------
    
    oCell12 = oSheet2.getCellByPosition (6, row_index ,  6, row_index)  
    oCell12.value = polje5.Text

Citiraj ovu poruku u odgovoru

Pokušao sam sa ovim ali ne radi. Ne radi ni polje za tekst, iako se isti obraza primenio u drugom kodu. Negde sešto nisam podesio a ne znam šta.
Kod:
polje = prozor.getControl("NumericField2")
      cell = oSheet2.getCellRangeByName("b9")
     cell.value  = polje.value

Citiraj ovu poruku u odgovoru

Ovo je kod sa kojim podižem prozor:
Kod:
Option Explicit
Public lFinished
Dim prozor As Object
Dim oListener as Object
Dim version As String

Sub OpenUlaz

lFinished = False
version = " 0.1 - Unos artikla"
DialogLibraries.LoadLibrary("Standard")
prozor = createUnoDialog(DialogLibraries.Standard.Ulaz)
prozor.Title = "Kancelarija" & version

dim sSheetName
dim oSheet1
dim polje
dim cell

sSheetName = "ULAZNE FAKTURE"
    If ThisComponent.Sheets().hasByName( sSheetName ) Then
    oSheet1 = ThisComponent.Sheets.getByName("ULAZNE FAKTURE")
    
polje = prozor.getControl("NumericField2")
      cell = oSheet1.getCellRangeByName("I1")
      polje.value = cell.value
            
polje = prozor.getControl("TextField1")
      cell = oSheet1.getCellRangeByName("c1")
      polje.Text = cell.String
      
polje = prozor.getControl("NumericField2")
      cell = oSheet1.getCellRangeByName("B9")
     cell.VALUE =      polje.VALUE
    
polje = prozor.getControl("TextField1")    
      cell = oSheet1.getCellRangeByName("c10")
     cell.string =      polje.text
            
prozor.setVisible( True )
      oListener = CreateUnoListener("Ulaz_", "com.sun.star.awt.XTopWindowListener")
      prozor.addTopWindowListener(oListener)

      While Not lFinished
      Wait 100
      Wend
      prozor.setVisible( False )

    Else
     prozor.setVisible( True )
     oListener = CreateUnoListener("Ulaz_", "com.sun.star.awt.XTopWindowListener")
     prozor.addTopWindowListener(oListener)

     While Not lFinished
     Wait 100
     Wend
     prozor.setVisible( False )

   endIF
end sub

U kodu sam namerno stavio da numeričko polje i polje za tekst učitaju sadržaje iz ćelija i potom te sadržaje iz ovih polja da se kopiraju u neke druge ćelije, čisto da proverim da li to sve radi.
Sa sledećim kodom, koji je povezan preko dugmeta na prozoru želim da sadržaje iz svih polja na prozoru prebacim u tabelu, ali to se ne dešava; pastuju se nule iz numeričkih polja a ćelija koja bi trebala da primi sadržaj iz polja za tekst ostaje prazna.
Kod:
sub ubaci

Dim oSheet10,V,i,oSheet2, oSheet1
dim Cell100, Cell500, oCell100
Dim oSheet,Cell, Cell22
Dim oActiveCell 'The current active cell
Dim oConv
dim NumericField2, NumericField3, NumericField4, NumericField5, NumericField6
dim TextField1
dim a
dim oCell12
dim address
dim column_index
dim row_index
dim Sifra_artikla, Naziv_artikla, Nabavna_cena, MP_cena, MP_vrednost, Kolicina
dim polje
dim cell2

oSheet1 = ThisComponent.Sheets.getByName("ULAZNE FAKTURE")
prozor = createUnoDialog(DialogLibraries.Standard.Ulaz)
oListener = CreateUnoListener("Ulaz_", "com.sun.star.awt.XTopWindowListener")

Sifra_artikla = prozor.getControl("NumericField2")
prozor.addTopWindowListener(oListener)

    'if NumericField2.Text = "" then
'    msgbox ("Upiši šifru artikla!",,"Upozorenje")
'    else
      Naziv_artikla = prozor.getControl("TextField1")
'      if polje2.Text = "" then
'      msgbox ("Upiši naziv artikla!",,"Upozorenje")    
'      else
        Kolicina = prozor.getControl("NumericField3")
'       if polje3.Text = ""  then                        'VIDETI KAKO RADI FUNKCIJA OR!!                        
'        msgbox ("Količina nije navedena!",,"Upozorenje")    
'        else
          Nabavna_cena = prozor.getControl("NumericField4")
         ' if polje4.Text = "" then                                        
         ' msgbox ("Šifra plaćanja nije navedena! Ispunite polje!",,"Upozorenje")    
         ' else
            MP_cena = prozor.getControl("NumericField5")
          '  if polje5.Text = "" then                        
           ' msgbox ("Valuta nije navedena! Ispunite polje!",,"Upozorenje")    
           'else
              MP_vrednost = prozor.getControl("NumericField6")
             ' if polje6.Text = "" then                        
             ' msgbox ("Iznos nije naveden! Ispunite polje!",,"Upozorenje")    
             ' else          
                ' polje7 = Ulaz.getControl("polje7")
               ' if polje7.Text = "" then                        
               ' msgbox ("Račun dužnika - nalogodavca nije naveden! Ispunite polje!",,"Upozorenje")    
               'else
                
    rem -----------------------------------------------------          
         i = 7
        Do
         i = i + 1

         Cell = oSheet1.getCellRangeByName("A" & i+1)
                If Cell.String = "" then
                 Cell.Value = V+i - 7

                oActiveCell = Cell()
                address = oActiveCell.getCellAddress()
                column_index = address.column
                row_index = address.row
         Exit Do
                EndIf  
                Loop
    rem -----------------------------------------------------
    rem     1    šifra artikla

'    dim data
prozor = createUnoDialog(DialogLibraries.Standard.Ulaz)

Sifra_artikla = prozor.getControl("NumericField2")
      cell2 = oSheet1.getCellRangeByName("B" & row_index +1)
     cell2.VALUE = Sifra_artikla.VALUE  

    
    rem -----------------------------------------------------
    rem     2    Naziv_artikla
    Naziv_artikla = prozor.getControl("TextField1")
    oCell12 = oSheet1.getCellRangeByName ("C" & row_index +1)
    oCell12.string = Naziv_artikla.text
        rem -----------------------------------------------------
    rem     3    Kolicina
    oCell12 = oSheet1.getCellRangeByName ("E" & row_index +1)
    Kolicina = prozor.getControl("NumericField3")
    v = Kolicina.Value  
    oCell12.value = v
    rem -----------------------------------------------------    
    rem     4    Nabavna_cena
    oCell12 = oSheet1.getCellRangeByName ("F" & row_index +1)
    oCell12.value = Nabavna_cena.Value
    rem -----------------------------------------------------
    rem     5    MP_cena
    oCell12 = oSheet1.getCellRangeByName ("L" & row_index +1)  
    oCell12.value = MP_cena.Value
    rem -----------------------------------------------------    
    rem     6    MP_vrednost
    oCell12 = oSheet1.getCellRangeByName ("M" & row_index +1)
    oCell12.value = MP_vrednost.Value

    
    'msgbox ("ARHIVIRANO!",,"Obaveštenje")'Poruka nakon što je virman arhiviran
    rem -----------------------------------------------------
    rem -----------------------------------------------------
              
                'endif
             ' endif
           ' endif
          'endif
    '  ' endif
     ' endif
'    endif
    
end sub
Molim za pomoć.
Citiraj ovu poruku u odgovoru

Rešen problem.
Citiraj ovu poruku u odgovoru

Možete li da napišete i ovde na forumu? Hvala.
Poseti veb stranicu korisnika
Citiraj ovu poruku u odgovoru

Ma pitanje je i šta je bio uzrok da nije radilo. Entrerom sam odvajao redove kodu i neke linije koda su "proradile". Pošto je kod kopiran, da li je moguće da prelom reda, ako tako mogu da kažem, se poremeti, pa to zasmeta? Nešto je i menjanoali neznatno. Uostalom, evo koda.
Kod:
Sub Main

End Sub
rem ************************************************************************
Option Explicit
Public lFinished
Dim prozor As Object
Dim oListener as Object
Dim version As String
rem ************************************************************************


Sub OpenUlaz()

lFinished = False
version = " 0.1 - Unos artikla"
DialogLibraries.LoadLibrary("Standard")
prozor = createUnoDialog(DialogLibraries.Standard.Ulaz)
prozor.Title = "Kancelarija" & version

dim sSheetName
dim oSheet1
dim polje
dim cell
dim Sifra_artikla        
      prozor.setVisible( True )
      oListener = CreateUnoListener("Ulaz_", "com.sun.star.awt.XTopWindowListener")
      prozor.addTopWindowListener(oListener)
      


      While Not lFinished
      Wait 100
      Wend
      prozor.setVisible( False )

end sub




Rem interfejs:
Sub Ulaz_windowActivated(oEv)
End Sub
Sub Ulaz_windowDeactivated(oEv)
End Sub
Sub Ulaz_windowOpened(oEv)
End Sub
Sub Ulaz_windowClosing(oEv)
  CloseUlaz()
End Sub
Sub Ulaz_windowClosed(oEv)
End Sub
Sub Ulaz_windowMinimized(oEv)
End Sub
Sub Ulaz_windowNormalized(oEv)
End Sub
Sub Ulaz_disposing(oEv)
End Sub




sub ubaci

Dim oSheet10,V,i,oSheet2, oSheet1
dim Cell100, Cell500, oCell100
Dim oSheet,Cell, Cell22
Dim oActiveCell 'The current active cell
Dim oConv
dim NumericField2, NumericField3, NumericField4, NumericField5, NumericField6
dim TextField1
dim a
dim oCell12
dim address
dim column_index
dim row_index
dim Sifra_artikla, Naziv_artikla, Nabavna_cena, MP_cena, MP_vrednost, Kolicina
dim polje
dim cell2

oSheet1 = ThisComponent.Sheets.getByName("ULAZNE FAKTURE")


    'if NumericField2.Text = "" then
'    msgbox ("Upiši šifru artikla!",,"Upozorenje")
'    else

Naziv_artikla = prozor.getControl("TextField1")
'      if polje2.Text = "" then
'      msgbox ("Upiši naziv artikla!",,"Upozorenje")    
'      else

        Kolicina = prozor.getControl("NumericField3")
'       if polje3.Text = ""  then                        'VIDETI KAKO RADI FUNKCIJA OR!!                        
'        msgbox ("Količina nije navedena!",,"Upozorenje")    
'        else
          Nabavna_cena = prozor.getControl("NumericField4")
         ' if polje4.Text = "" then                                        
         ' msgbox ("Šifra plaćanja nije navedena! Ispunite polje!",,"Upozorenje")    
         ' else
            MP_cena = prozor.getControl("NumericField5")
          '  if polje5.Text = "" then                        
           ' msgbox ("Valuta nije navedena! Ispunite polje!",,"Upozorenje")    
           'else
              MP_vrednost = prozor.getControl("NumericField6")
             ' if polje6.Text = "" then                        
             ' msgbox ("Iznos nije naveden! Ispunite polje!",,"Upozorenje")    
             ' else          
                ' polje7 = Ulaz.getControl("polje7")
               ' if polje7.Text = "" then                        
               ' msgbox ("Račun dužnika - nalogodavca nije naveden! Ispunite polje!",,"Upozorenje")    
               'else
                
    rem -----------------------------------------------------          
         i = 7
        Do
         i = i + 1

         Cell = oSheet1.getCellRangeByName("A" & i+1)
                If Cell.String = "" then
                 Cell.Value = V+i - 7

                oActiveCell = Cell()
                address = oActiveCell.getCellAddress()
                column_index = address.column
                row_index = address.row
         Exit Do
                EndIf  
                Loop
    rem -----------------------------------------------------
    rem     1    šifra artikla

'    dim data


Sifra_artikla = prozor.getControl("NumericField2")
      cell2 = oSheet1.getCellRangeByName("B" & row_index +1)
     cell2.VALUE = Sifra_artikla.VALUE  

    
    rem -----------------------------------------------------
    rem     2    Naziv_artikla
    Naziv_artikla = prozor.getControl("TextField1")
    oCell12 = oSheet1.getCellRangeByName ("C" & row_index +1)
    oCell12.string = Naziv_artikla.text
        rem -----------------------------------------------------
    rem     3    Kolicina
    oCell12 = oSheet1.getCellRangeByName ("E" & row_index +1)
    Kolicina = prozor.getControl("NumericField3")
    v = Kolicina.Value  
    oCell12.value = v
    rem -----------------------------------------------------    
    rem     4    Nabavna_cena
    oCell12 = oSheet1.getCellRangeByName ("F" & row_index +1)
    oCell12.value = Nabavna_cena.Value
    rem -----------------------------------------------------
    rem     5    MP_cena
    oCell12 = oSheet1.getCellRangeByName ("L" & row_index +1)  
    oCell12.value = MP_cena.Value
    rem -----------------------------------------------------    
    rem     6    MP_vrednost
    oCell12 = oSheet1.getCellRangeByName ("M" & row_index +1)
    oCell12.value = MP_vrednost.Value

    
    'msgbox ("ARHIVIRANO!",,"Obaveštenje")'Poruka nakon što je virman arhiviran
    rem -----------------------------------------------------
    rem -----------------------------------------------------
              
                'endif
             ' endif
           ' endif
          'endif
    '  ' endif
     ' endif
'    endif
    
end sub

Sub CloseUlaz()
  lFinished = TRUE
End Sub

Citiraj ovu poruku u odgovoru
Odgovori 




Kontakt | otvorenidokument.com | Povratak na vrh | Povratak na sadržaj | RSS