source: publico/ILSAALTesouraria/trunk/MovimentoTesouraria.py

Última Alteração nesse arquivo foi 1527, incluída por jeanferri, 15 anos atrás

Atualizada a versão do ArchGenXml para a 1.4RC2

File size: 7.9 KB
Linha 
1# File: MovimentoTesouraria.py
2#
3# Copyright (c) 2005 by Interlegis
4# Generator: ArchGenXML Version 1.4.0-RC2 svn/development
5#            http://plone.org/products/archgenxml
6#
7# GNU General Public Licence (GPL)
8#
9# This program is free software; you can redistribute it and/or modify it under
10# the terms of the GNU General Public License as published by the Free Software
11# Foundation; either version 2 of the License, or (at your option) any later
12# version.
13# This program is distributed in the hope that it will be useful, but WITHOUT
14# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15# FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
16# details.
17# You should have received a copy of the GNU General Public License along with
18# this program; if not, write to the Free Software Foundation, Inc., 59 Temple
19# Place, Suite 330, Boston, MA  02111-1307  USA
20#
21__author__  = '''STC Interlegis <stc@interlegis.gov.br>'''
22__docformat__ = 'plaintext'
23
24
25from AccessControl import ClassSecurityInfo
26from Products.Archetypes.atapi import *
27from Products.ILSAALTesouraria.interfaces.IMovimentoTesouraria import IMovimentoTesouraria
28
29from Products.ATVocabularyManager.namedvocabulary import NamedVocabulary
30
31from Products.Archetypes.SQLStorage import *
32# additional imports from tagged value 'import'
33from DateTime import DateTime
34from Products.ILSAAL.saalapi import *
35
36from Products.ILSAALTesouraria.config import *
37##code-section module-header #fill in your manual code here
38##/code-section module-header
39
40schema=Schema((
41    DateTimeField('dat_operacao',
42        default=DateTime(),
43        widget=CalendarWidget(
44            label="Data da operacao",
45            description="Informe a data da operacao desse movimento.",
46            format="%d/%m/%Y",
47            date_only=1,
48            label_msgid='ILSAALTesouraria_label_dat_operacao',
49            description_msgid='ILSAALTesouraria_help_dat_operacao',
50            i18n_domain='ILSAALTesouraria',
51        ),
52        required=1
53    ),
54
55    StringField('tip_operacao',
56        widget=SelectionWidget(
57            label="Tipo de Operacao",
58            description="Informe o tipo de operacao desse movimento.",
59            format="select",
60            label_msgid='ILSAALTesouraria_label_tip_operacao',
61            description_msgid='ILSAALTesouraria_help_tip_operacao',
62            i18n_domain='ILSAALTesouraria',
63        ),
64        required=1,
65        vocabulary=NamedVocabulary("""tipos_operacao"""),
66        enforceVocabulary=1
67    ),
68
69    FixedPointField('vlr_operacao',
70        widget=CurrencyWidget(
71            label="Valor da Operacao",
72            description="Informe o valor da operacao desse movimento.",
73            label_msgid='ILSAALTesouraria_label_vlr_operacao',
74            description_msgid='ILSAALTesouraria_help_vlr_operacao',
75            i18n_domain='ILSAALTesouraria',
76        ),
77        required=1
78    ),
79
80    TextField('des_operacao',
81        widget=TextAreaWidget(
82            label="Operacao",
83            description="Descrever a operacao financeira realizada",
84            label_msgid='ILSAALTesouraria_label_des_operacao',
85            description_msgid='ILSAALTesouraria_help_des_operacao',
86            i18n_domain='ILSAALTesouraria',
87        ),
88        required=1
89    ),
90
91    StringField('tip_documento',
92        widget=SelectionWidget(
93            label="Tipo do Documento",
94            description="Informe o tipo do documento deste movimento.",
95            format="select",
96            label_msgid='ILSAALTesouraria_label_tip_documento',
97            description_msgid='ILSAALTesouraria_help_tip_documento',
98            i18n_domain='ILSAALTesouraria',
99        ),
100        required=1,
101        vocabulary=NamedVocabulary("""tipos_documento"""),
102        enforceVocabulary=1
103    ),
104
105    StringField('num_documento',
106        widget=StringWidget(
107            label="Numero do Documento",
108            description="Informe o numero do documento deste movimento.",
109            label_msgid='ILSAALTesouraria_label_num_documento',
110            description_msgid='ILSAALTesouraria_help_num_documento',
111            i18n_domain='ILSAALTesouraria',
112        ),
113        required=1
114    ),
115
116    StringField('num_serie_documento',
117        widget=StringWidget(
118            label="Numero de Serie",
119            description="Informe o numero de serie do documento deste movimento.",
120            label_msgid='ILSAALTesouraria_label_num_serie_documento',
121            description_msgid='ILSAALTesouraria_help_num_serie_documento',
122            i18n_domain='ILSAALTesouraria',
123        )
124    ),
125
126    DateTimeField('dat_documento',
127        default=DateTime(),
128        widget=CalendarWidget(
129            label="Data do Documento",
130            description="Informe a data do documento deste movimento.",
131            format="%d/%m/%Y",
132            date_only=1,
133            label_msgid='ILSAALTesouraria_label_dat_documento',
134            description_msgid='ILSAALTesouraria_help_dat_documento',
135            i18n_domain='ILSAALTesouraria',
136        ),
137        required=1
138    ),
139
140    FixedPointField('vlr_documento',
141        widget=CurrencyWidget(
142            label="Valor do Documento",
143            description="Informe o valor do documento deste movimento.",
144            label_msgid='ILSAALTesouraria_label_vlr_documento',
145            description_msgid='ILSAALTesouraria_help_vlr_documento',
146            i18n_domain='ILSAALTesouraria',
147        ),
148        required=1
149    ),
150
151
152    ReferenceField('num_seq_cd',
153        widget=ReferenceWidget(
154            label="Credor/Devedor",
155            description="Selecione o Credor/Devedor deste movimento.",
156            format="select",
157            addable=1,
158            label_msgid='ILSAALTesouraria_label_num_seq_cd',
159            description_msgid='ILSAALTesouraria_help_num_seq_cd',
160            i18n_domain='ILSAALTesouraria',
161        ),
162        vocabulary_display_path_bound=-1,
163        multiValued=0,
164        relationship='MovimentoTesouraria_CredorDevedor',
165        allowed_types=('CredorDevedorPF', 'CredorDevedorPJ'),
166        required=1
167    ),
168
169
170    ReferenceField('num_conta',
171        widget=ReferenceWidget(
172            label="Conta Corrente",
173            description="Selecione a conta corrente deste recebimento.",
174            format="select",
175            addable=1,
176            label_msgid='ILSAALTesouraria_label_num_conta',
177            description_msgid='ILSAALTesouraria_help_num_conta',
178            i18n_domain='ILSAALTesouraria',
179        ),
180        vocabulary_display_path_bound=-1,
181        multiValued=0,
182        relationship='MovimentoTesouraria_ContaCorrente',
183        allowed_types=('ContaCorrente',),
184        required=1
185    ),
186
187),
188)
189
190
191##code-section after-local-schema #fill in your manual code here
192##/code-section after-local-schema
193
194MovimentoTesouraria_schema = schema
195
196##code-section after-schema #fill in your manual code here
197##/code-section after-schema
198
199class MovimentoTesouraria:
200    """
201    Mantem dados de registros das operacoes da tesouraria relativas
202    aos pagamentos e aos recebimentos, em reais, realizadas pela
203    tesouraria. Corresponde ao LivroCaixa. Cada instancia esta
204    associada a uma instancia da classe pagamento ou da classe
205    recebimento e apenas uma em FechamentoMensal.
206    """
207    security = ClassSecurityInfo()
208    __implements__ = () + (IMovimentoTesouraria,)
209
210
211    allowed_content_types      = ['Conciliacao']
212    schema = MovimentoTesouraria_schema
213
214    ##code-section class-header #fill in your manual code here
215    ##/code-section class-header
216
217
218    #Methods
219    #methods from Interface IMovimentoTesouraria
220
221    security.declarePrivate('_titulo')
222    def _titulo(self):
223        """
224        Define um titulo personalizado para este objeto.
225        """
226       
227        try:
228            data_operacao = (self.getDat_operacao())
229            return DateTime(data_operacao).strftime('%d-%m-%Y') + ': ' + str(self.getVlr_operacao())
230        except:
231            return str(self.getVlr_operacao())
232
233
234# end of class MovimentoTesouraria
235
236##code-section module-footer #fill in your manual code here
237##/code-section module-footer
238
239
240
Note: Veja TracBrowser para ajuda no uso do navegador do trac.
 

The contents and data of this website are published under license:
Creative Commons 4.0 Brasil - Atribuir Fonte - Compartilhar Igual.