Reklāma:

Dumjais lācis un paitōns

Vakar pavadīju aptuveni trīsdesmit minūtes, lai atrisinātu neskaidru problēmu. Īsumā – SQL serveris pie UPDATE vaicājuma paziņoja, ka kaut kāda vērtība ir ārpus pieļaujamajām robežām.

Microsoft Dynamics AX datubāzē datums tiek rakstīts kā normāls DATETIME lauks. Bet, kā izrādās (ja ticēt integratoriem), laiks, savukārt, ir jāraksta atsevišķā kolonnā. Nebūtu jau nekas tāds nenormāli baiss, ja Axapta nepieprasītu laiku rakstīt kā parastu skaitli, kurš norāda sekundes kopš pusnakts (!).

Tālāk jau sekoja ātrs uzrakstījums (jo optimālāku metodi nemeklēju).

zakainop.transactiontime = \
    notification.ts.strftime('%H') * 60 * 60 + \
    notification.ts.strftime('%M')) * 60 + \
    notification.ts.strftime('%S')

Vai jums šķiet, ka es panācu vēlamo rezultātu? Jo rezultātā ieguvu teksta virkni, kurā stundas atkārtojās 3600 reizes, minūtes – 60 reizes un sekundes bija vienu reizi galā. Ibo, visiem (arī man bija) zināms sekojošais.

'kaka' * 2 # Būs 'kakakaka' 

Lieki piebilst, ka es par to biju piemirsis un neiedomājos, ka overflow iestājas ikurāt šā iemesla dēļ. Vēlējos tikai pazīmēties, cik dažreiz esmu dumjš.

Šie ir tie 9 komentāri

    • #1. Ģirts 2009. gada 27. februārī, plkst. 13:07
    • Lūk, ar ko Python draņķīgāks par Javu – Javā tādus “prikolus” neizdarīsi…

    • Saite uz šo komentāru
    • #3. python 2009. gada 27. februārī, plkst. 15:21
    • Uz intu vajadzeja konvertet:

      int(notification.ts.strftime(‘%H’))

    • Saite uz šo komentāru
    • #5. bubu 2009. gada 27. februārī, plkst. 15:49
    • Ģirt: Pitonu tak nevar salīdzināt ar Javu. Tās ir divas dažādas kategorijas. Tikpat labi varēji teikt, ka Lūk ar ko Python draņķīgāks par Paskālu (vai C++, vai C#).

      Te jau drīzāk bija jāsaka – lūk līdz kam cilvēkus noved PHP.

    • Saite uz šo komentāru
    • #7. kikko 2009. gada 27. februārī, plkst. 17:09
    • ja notification.ts ir standarta python datetime tad

      ts.hour * 3600 + ts.minute * 60 + ts.second

      bet vislielākais pārsteigums ka Dynamics runā pythonā o_O

    • Saite uz šo komentāru
    • #8. Ģirts 2009. gada 27. februārī, plkst. 20:16
    • Man pat loģiski domājot nenāk prātā kā ir iespējams sareizināt simbolu virkni ar ciparu – tas ir kaut kā neloģiski, jā – php principā ir bērnu valoda, lai arī bērni var iemācīties web-prōgrammmēšānu.

    • Saite uz šo komentāru
    • #9. edk 2009. gada 28. februārī, plkst. 19:08
    • tas viss man bija skaidrs jau uzreiz. tev taisnība – esi dumjš

    • Saite uz šo komentāru

Moderācija: Daži vārdi var gadīties, ka ir iz melnās listes (viagra and stuff). Tādi komentāri tiek aizturēti, pirms parādās lapā. Ja Tavs komentārs neparādās uzreizi, būs vien jāpagaida, līdz es jamo izlasīšu. Protams, ka paturu tiesības sev netīkošos komentārus dzēst, iemeslu neminot.