scripts: script to initialize the act field 'valide'.

This commit is contained in:
Mikaël Ates 2013-01-23 15:08:07 +01:00
parent 5c76ab4c7f
commit 370e29406b
1 changed files with 34 additions and 0 deletions

34
scripts/maj_valide.py Normal file
View File

@ -0,0 +1,34 @@
import sys
import calebasse.settings
import django.core.management
from datetime import datetime
django.core.management.setup_environ(calebasse.settings)
from django.db import transaction
from calebasse.actes.models import Act
@transaction.commit_manually
def main():
print datetime.now()
total = Act.objects.all().count()
i = 0
for a in Act.objects.all():
i += 1
try:
state = a.actvalidationstate_set.latest('created')
if state.state_name == 'VALIDE':
a.valide = True
a.save()
except:
pass
if not i % 100:
percent = int(round((float(i) / float(total)) * 100))
out = '\r %20s [%s%s] %3d %%' % ("Actes traites : ", '=' * percent, ' ' * (100 - percent), percent)
sys.stdout.write(out)
sys.stdout.flush()
transaction.commit()
print datetime.now()
if __name__ == "__main__":
main()