10
votes

Méthode Ruby pour obtenir les mois de quarts une date donnée appartient à

J'ai une date et je veux savoir les mois de ce trimestre particulier.Comment-je-je le faire dans Ruby de la manière la plus simple possible? Je veux dire si la date que je donne est 27-04-2011 , alors le résultat que je dois obtenir est d'avril, mai, juin comme une chaîne ou de l'intégration comme 4,5,6 pour avril à juin.


6 commentaires

Comment suivez-vous exactement les quartiers?


"4 quart chaque année" n'est pas "exact": - / sont vos "quartiers" composés de mois complets, à partir du premier jour de la première et se terminant le dernier jour du troisième mois? Ou suivent-ils les saisons (et si oui, comment définissez-vous quelle date la date des saisons change-t-elle) ou sont-elles basées sur quatre allures de 91/92 jours (et où sont-elles démarquées) ou suivent-ils des entreprises arbitraires? Régime de la période financière?


En pratique, un trimestre commence le premier jour du premier mois du trimestre et se termine le dernier jour du dernier mois du trimestre.


Si vous parlez d'un quartier fiscal, cela dépend de nombreux facteurs. Dans le gouvernement américain exécute OCT au Septembre. En Suède, il existe quatre calendriers fiscaux distincts qu'une entreprise peut utiliser. Même plus simple que cela si vous ne parliez pas fiscal, voulez-vous dire 365/4 ou 12/4?


12/4. Je ne répondais que sur le calendrier général du quartier pour aborder @pavling. Le reste des questions de Pavling est parfaitement valide et pas clair dans la question initiale.


J'ai supprimé ma réponse ci-dessous parce qu'après la modification de la question initiale, ma réponse n'a plus été correcte ...


5 Réponses :


4
votes

Vous pouvez définir une fonction pour que cela accepte la date comme argument et renvoyer le trimestre xxx

la fonction retournera la matrice en fonction de la valeur de la valeur de la valeur de la valeur de la valeur de la valeur de la valeur de la valeur de la valeur le quart de la date appartient à.


15 commentaires

Cela reviendra donc un tableau de trois mois ... Cela signifie-t-il que l'appelant doit alors identifier quel trimestre a ces trois mois?


@jaydel: Oui Exaclty ou sinon, il peut modifier la fonction !! Stackoverflow est d'aider et de ne pas coder pour Poeple


@jaydel: Ok, je l'ai aidé dans la façon dont je pouvais mon frère ... Le reste est à lui s'il est satisfait de la réponse ou non. Puisqu'il a accepté la réponse, c'est évident !!


@jaydel: S'il vous plaît, ne laissez pas au moins laissez quelqu'un inutilement quand vous ne pouvez pas apprécier leurs efforts!


@jaydel: sa réponse répond à l'exigence du questionnaire complètement !!


Les gars, il vient de modifier la question. Ne jouons pas l'histoire révisionniste. À l'origine, il a demandé au trimestre une date d'appartenance. Cependant, voir comment il a changé sa question, je vais enlever mon -1 comme maintenant, il répond pleinement à sa version éditée de la question. Et Mithun, je ne vous laissais pas tomber. Comme il vous a demandé à l'origine, vous n'avez tout simplement pas posé la question. Aucune offense ou hostilité destinée au tout ...


J'ai supprimé ma réponse car elle a répondu à la question initiale et non à la version modifiée et, en tant que telle, il suffit de signaler au bruit.


@jaydel: Non Bro pas du tout ... Ce que je pensais était qu'il n'aurait pas accepté la réponse si elle n'a pas répondu aux normes. Quoi qu'il en soit, merci. Il assurez-vous de la prochaine fois que mes réponses sont au point :)


@Mithun: À la lumière de son changement, vous avez répondu parfaitement :) En outre, cela ne me laissera pas emporter mon -1. Si vous modifiez votre réponse (juste un peu de changement cosmétique), je peux alors prendre le -1 loin. Vous ne devriez pas être pénalisé: p


@Seane Paul: Voici la question originale qui était ce que nous discutions: "J'ai une date et je veux savoir quel trimestre appartient à cette date. Comment puis-je avoir cela fait dans Ruby de la manière la plus simple possible ??" J'ai pris cela de l'historique de modifier directement.


@jaydel: Oui, mais le questionnaire n'aurait pas accepté la réponse si elle ne rencontrait pas son exigence Ryt Bro !!


Si rien d'autre, l'OP a peut-être appris une leçon de poser des questions intelligentes ;-) CATB .org / ~ ESR / FAQ / SMART-QUESTIONS.HTML


@Seane Paul: Oui, je l'ai reconnu aussi. Mais c'était parce que l'OP n'a pas posé sa question et Mithun est un MindReader (c'est des félicitations, pas un sarcasme). Lorsque nous répondons et évaluons les réponses, nous n'avons que la question de l'OP. Ça a changé. J'ai même supprimé ma réponse qui était soudainement incorrecte: p


@jaydel: Personnellement, je sens que votre réponse était la plus précise si tout ce qu'il voulait était juste le qurter !!!


@Mithun: merci :) apprécié notre échange ici. Bon produit



4
votes

Vous pouvez effectuer ce qui suit: xxx

comme dans xxx


1 commentaires

Cela nécessite des activités d'activation



25
votes

Vous pouvez obtenir le trimestre à partir de n'importe quelle date en faisant cela:

quarter = (Date.today.month / 3.0).ceil


1 commentaires

Une réponse aussi propre et parfaite. Je ne sais pas pourquoi cela n'a pas été accepté.



2
votes

Pour ceux qui sont venus ici en recherchant "Ruby Date Quarter". Vous pouvez facilement étendre Date classe avec quartiers: XXX PRE>

EXEMPLE D'UTILISATION: P>

Date.parse("1 jan").quarter # -> 1
Date.parse("1 apr").quarter # -> 2
Date.parse("1 jul").quarter # -> 3
Date.parse("1 oct").quarter # -> 4
Date.parse("31 dec").quarter # -> 4


0 commentaires

1
votes

La façon dont votre question est libellée, vous pouvez simplement utiliser le #month

", puis le résultat que je dois obtenir est avril, mai, juin comme chaîne ou intégralement comme 4,5,6 pour avril à juin." P>

avril est le mois 4 SO P>

d = Date.parse('2014-04-01')
  => Tue, 01 Apr 2014
d.quarter
  => 2


1 commentaires

Cela fonctionne, mais dans l'exemple d'utilisation d.quarter devrait retourner 2 non 4