[Tex/LaTex] Cite article number in proceedings, instead of pages

bibliographies

For some reason some conference sometimes use page numbers in their proceedings, and on other years "article numbers" are used.

So when I cite one of the latter kind, I would like to remove "pages xx–yy" and replace it with something like "article no. z" in the rendering of my @inproceedings item.

Of course using number doesn't seem to work, as it is formatted as an issue number, pretty much in the same way as in a @article item.
That is confirmed by the .blg file:

Warning–there's a number but no series in Bougeret2011

I use the sig-alternate style, hence we get:

\documentclass{sig-alternate}
\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@inproceedings{Casas2012,
    author = {Casas, Marc and de Supinski, Bronis and Bronevetsky, Greg and Schulz, Martin},
    title = {Fault Resilience of the Algebraic Multi-grid Solver},
    booktitle = {ICS},
    isbn = {978-1-4503-1316-2},
    doi = {10.1145/2304576.2304590},
    year = {2012},
    pages = {91--100},
}

@inproceedings{Bougeret2011,
    author = {Bougeret, Marin and Casanova, Henri and Rabie, Mikael and Robert, Yves and Vivien, Frédéric},
    title = {Checkpointing strategies for parallel jobs},
    booktitle = {SC},
    isbn = {978-1-4503-0771-0},
    doi = {10.1145/2063384.2063428},
    year = {2011},
    number = {1}, 
} % ^^^^^^ what should there be instead of 'number' here ?
\end{filecontents}

\begin{document}
\nocite{*}
\bibliographystyle{abbrv}
\bibliography{\jobname}
\end{document}

Best Answer

I ended up forking abbrv.bst to add articleno to the ENTRY list, and modify the pages function as follows:

FUNCTION {format.pages}
{ pages empty$
    { articleno empty$
        { "" }
        { "article no." articleno tie.or.space.connect }
      if$
    }
    { pages multi.page.check
        { "pages" pages n.dashify tie.or.space.connect }
        { "page" pages tie.or.space.connect }
      if$
    }
  if$
}

Now I can use articleno = {1} in my .bib file.

Of course, when format.pages is conditionally called in the new .bst file, a pages empty$ should probably be replaced by a pages empty$ articleno empty$ and, for items where it makes sense.